From 3cacf40865d53c857422ba88420248dac2a3eef2 Mon Sep 17 00:00:00 2001 From: Brendan Reville Date: Sun, 21 Sep 2014 20:28:02 -0700 Subject: [PATCH 01/11] The grey banner on code.org/ now has a (temporary) link to the /educate/k5 workshops page. --- pegasus/sites.v3/code.org/public/index.haml | 2 +- pegasus/sites.v3/code.org/views/index_k5workshops.haml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 pegasus/sites.v3/code.org/views/index_k5workshops.haml diff --git a/pegasus/sites.v3/code.org/public/index.haml b/pegasus/sites.v3/code.org/public/index.haml index db05011bb07dc..0798040498c3f 100644 --- a/pegasus/sites.v3/code.org/public/index.haml +++ b/pegasus/sites.v3/code.org/public/index.haml @@ -1,6 +1,6 @@ --- theme: responsive -banner: <%= request.site == 'csedweek.org' ? :index_hoc : :index_loc %> +banner: <%= request.site == 'csedweek.org' ? :index_hoc : :index_k5workshops %> <% if request.site == 'csedweek.org' twitter_meta = { diff --git a/pegasus/sites.v3/code.org/views/index_k5workshops.haml b/pegasus/sites.v3/code.org/views/index_k5workshops.haml new file mode 100644 index 0000000000000..2380b4dc29dfe --- /dev/null +++ b/pegasus/sites.v3/code.org/views/index_k5workshops.haml @@ -0,0 +1,5 @@ +.lines_of_code_header{style: "font-size: 28px"} + %a.lines_of_code_link{:href=>"/educate/k5"} + Teaching grades K-5? Attend our free 1-day workshops! + %span{style: "opacity: 0.6"} + (US only) From 50b35e938ccac873290a77d3f3a06e457a31d915 Mon Sep 17 00:00:00 2001 From: Geoffrey Elliott Date: Wed, 17 Sep 2014 11:05:44 -0700 Subject: [PATCH 02/11] Employee Engagement basics: Create code.org/company-profiles/* landing page with default text that is customized with the company name. Add create-company-profile and edit-company-profile forms to allow companies to edit name, text (markdown), video, and logo. Store company name in activity table and retrieve company name on the congrats certificate page. These pages are not being publicized yet and there is lots of fit and finish still to do. --- pegasus/forms/company_profile.rb | 19 +++ pegasus/helpers/hoc_helpers.rb | 45 ++++- .../49_create_hoc_actvitiy_table.rb | 29 ++++ pegasus/routes/form_routes.rb | 3 +- pegasus/routes/hoc_routes.rb | 7 + .../public/company-profiles/splat.haml | 92 ++++++++++ .../public/create-company-profile.haml | 3 + pegasus/sites.v3/code.org/public/css/ee.css | 160 ++++++++++++++++++ .../sites.v3/code.org/public/css/ee_form.css | 3 + .../public/edit-company-profile/splat.haml | 3 + .../code.org/public/images/stats-hoc-2013.png | Bin 0 -> 483276 bytes .../code.org/views/company_profile_form.haml | 71 ++++++++ .../views/employee_engagement_video.haml | 14 ++ .../code.org/views/stats_hoc_2013.haml | 3 + pegasus/src/database/form.rb | 2 +- 15 files changed, 448 insertions(+), 6 deletions(-) create mode 100644 pegasus/forms/company_profile.rb create mode 100644 pegasus/migrations/49_create_hoc_actvitiy_table.rb create mode 100644 pegasus/sites.v3/code.org/public/company-profiles/splat.haml create mode 100644 pegasus/sites.v3/code.org/public/create-company-profile.haml create mode 100644 pegasus/sites.v3/code.org/public/css/ee.css create mode 100644 pegasus/sites.v3/code.org/public/css/ee_form.css create mode 100644 pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml create mode 100644 pegasus/sites.v3/code.org/public/images/stats-hoc-2013.png create mode 100644 pegasus/sites.v3/code.org/views/company_profile_form.haml create mode 100644 pegasus/sites.v3/code.org/views/employee_engagement_video.haml create mode 100644 pegasus/sites.v3/code.org/views/stats_hoc_2013.haml diff --git a/pegasus/forms/company_profile.rb b/pegasus/forms/company_profile.rb new file mode 100644 index 0000000000000..eaf4840abd229 --- /dev/null +++ b/pegasus/forms/company_profile.rb @@ -0,0 +1,19 @@ +class CompanyProfile + + def self.normalize(data) + {}.tap do |result| + result[:email_s] = 'anonymous@code.org' + result[:name_s] = required downcased stripped data[:name_s] + result[:display_name_s] = required stripped data[:display_name_s] + result[:video_key_s] = nil_if_empty stripped data[:video_key_s] + result[:intro_top_copy_t] = nil_if_empty stripped data[:intro_top_copy_t] + result[:intro_bottom_copy_t] = nil_if_empty stripped data[:intro_bottom_copy_t] + result[:additional_actions_copy_t] = nil_if_empty stripped data[:additional_actions_copy_t] + + if FormError.detect_errors(result).empty? + result[:logo_path_s] = nil_if_empty uploaded_file data[:logo_file] + end + end + end + +end diff --git a/pegasus/helpers/hoc_helpers.rb b/pegasus/helpers/hoc_helpers.rb index 14effbc7382f0..39a24bd2b34d5 100644 --- a/pegasus/helpers/hoc_helpers.rb +++ b/pegasus/helpers/hoc_helpers.rb @@ -61,8 +61,17 @@ def complete_tutorial(tutorial=nil) end end + # For now, Do the bare minimum to bring a user with a + # company-specific cookie to the right congrats page. + sequel_row = DB[:hoc_activity].where(session:request.cookies['hour_of_code']).first + company = sequel_row[:company] if sequel_row + expires 0, :private, :must_revalidate - redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}" : '/congrats'), 302) + if company + redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}&ee=#{company}" : '/congrats'), 302) + else + redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}" : '/congrats'), 302) + end end def complete_tutorial_pixel(tutorial) @@ -88,16 +97,28 @@ def complete_tutorial_pixel(tutorial) send_file sites_dir('all/images/1x1.png'), type:'image/png' end -def launch_tutorial(tutorial) +def launch_tutorial(tutorial,params={}) unless settings.read_only + session = SecureRandom.hex + row = HourOfActivity.create({ - session: SecureRandom.hex, + session: session, referer: request.referer_site_with_port, tutorial: tutorial[:code], started: true, create_ip: request.ip, }) - set_tutorial_session_cookie(row.session) + + DB[:hoc_activity].insert( + session:session, + referer:request.referer_site_with_port, + tutorial:tutorial[:code], + company:params[:company], + started_at:DateTime.now, + started_ip:request.ip, + ) + + set_tutorial_session_cookie(session) end expires 0, :private, :must_revalidate @@ -121,6 +142,22 @@ def launch_tutorial_pixel(tutorial) }) set_tutorial_session_cookie(row.session) end + + row = DB[:hoc_activity].where(session:request.cookies['hour_of_code'], pixel_started_at:nil, pixel_finished_at:nil, finished_at:nil).first + if row + DB[:hoc_activity].update(pixel_started_at:DateTime.now, pixel_started_ip:request.ip).where(id:row[:id]) + else + session = SecureRandom.hex + DB[:hoc_activity].insert( + session:session, + referer:request.referer_site_with_port, + tutorial:tutorial[:code], + company:params[:company], + pixel_started_at:DateTime.now, + pixel_started_ip:request.ip, + ) + set_tutorial_session_cookie(session) + end end expires 0, :private, :must_revalidate diff --git a/pegasus/migrations/49_create_hoc_actvitiy_table.rb b/pegasus/migrations/49_create_hoc_actvitiy_table.rb new file mode 100644 index 0000000000000..02cfdb986090d --- /dev/null +++ b/pegasus/migrations/49_create_hoc_actvitiy_table.rb @@ -0,0 +1,29 @@ +Sequel.migration do + up do + create_table(:hoc_activity, charset:'utf8') do + primary_key :id + String :session, unique:true, null:false, index:true, size:50 + String :referer, size:50 + String :company, index:true, size:50 + String :tutorial, index:true, null:false, size:50 + + DateTime :started_at + String :started_ip, size:50 + DateTime :pixel_started_at + String :pixel_started_ip, size:50 + DateTime :pixel_finsihed_at + String :pixel_finished_ip, size:50 + DateTime :finished_at + String :finished_ip, size:50 + + String :country_code, index:true, size:2 + String :state_code, index:true, size:2 # e.g. + String :city, index:true, size:50 + String :location, size:50 # "lat,long" + end + end + + down do + drop_table(:hoc_activity) + end +end diff --git a/pegasus/routes/form_routes.rb b/pegasus/routes/form_routes.rb index 7d3172d660ce5..b8e27c5c0ac6c 100644 --- a/pegasus/routes/form_routes.rb +++ b/pegasus/routes/form_routes.rb @@ -25,7 +25,8 @@ begin content_type :json cache_control :private, :must_revalidate, :max_age=>0 - insert_form(kind, params).data.to_json + form = insert_form(kind, params) + form.data.merge(secret: form.secret).to_json rescue FormError=>e halt 400, {'Content-Type'=>'text/json'}, e.errors.to_json end diff --git a/pegasus/routes/hoc_routes.rb b/pegasus/routes/hoc_routes.rb index c102f7468cac2..112da581453cc 100644 --- a/pegasus/routes/hoc_routes.rb +++ b/pegasus/routes/hoc_routes.rb @@ -10,6 +10,13 @@ JSON.pretty_generate(fetch_hoc_metrics['tutorials']) end +# Employee engagement +get '/api/ee/begin/:company' do |company| + pass unless form = DB[:forms].where(kind:'CompanyProfile', name:company).first + pass unless tutorial = DB[:tutorials].where(code:'codeorg').first + launch_tutorial(tutorial, company:company) +end + get '/api/hour/begin/:code' do |code| only_for ['code.org', 'csedweek.org', 'uk.code.org'] pass unless tutorial = DB[:tutorials].where(code:code).first diff --git a/pegasus/sites.v3/code.org/public/company-profiles/splat.haml b/pegasus/sites.v3/code.org/public/company-profiles/splat.haml new file mode 100644 index 0000000000000..05e4934059819 --- /dev/null +++ b/pegasus/sites.v3/code.org/public/company-profiles/splat.haml @@ -0,0 +1,92 @@ +--- +title: "Join the largest learning event in history, Dec 8-14, 2014" +-# banner: "Join the largest learning event in history, Dec 8-14, 2014" +social: + "twitter:card": player + "twitter:site": "@codeorg" + "twitter:url": "http://code.org/" + "twitter:title": "Join the largest learning event in history, Dec 8-14, 2014" + "twitter:description": "The Hour of Code is a global movement reaching tens of millions of students in 170+ countries. Anyone, anywhere can organize an Hour of Code event. One-hour tutorials are available in over 30 languages. No experience needed. Ages 4 to 104." + "twitter:image:src": 'http://csedweek.org/images/hoc-video-thumbnail.jpg' + "twitter:player": 'https://www.youtubeeducation.com/embed/FC5FbmsH4fw?iv_load_policy=3&rel=0&autohide=1&showinfo=0' + "twitter:player:width": 1920 + "twitter:player:height": 1080 +--- + +-facebook = {:u=>"http://#{request.site}/"} + +-twitter = {:url=>"http://#{request.site}/", :related=>'codeorg', :hashtags=>'', :text=>'Join the largest learning event in history, Dec 8-14, 2014'} +-twitter[:hashtags] = 'HourOfCode' + + + +-pass unless form = DB[:forms].where(kind:'CompanyProfile', name:request.splat_path_info[1..-1]).first +-company = JSON.parse(form[:data]) + +%link{rel: "stylesheet", type: "text/css", href: "/css/ee.css"}/ + + +#company_header + #alignment-spacer + -if company['logo_path_s'] + %img#company_logo{src:"/forms/uploads/#{company['logo_path_s']}", width: "50px", height: "50px"} + %h1.ee_display_name= company['display_name_s'] + +#intro_top + -if company['intro_top_copy_t'] + =markdown company['intro_top_copy_t'].to_s + -else + :markdown + ## #{company['display_name_s']} asks all its employees to try an Hour of Code in support of computer science education + + Computer science is the defining field of the 21st century, yet most of us never learn it, and most schools don't even offer it. In support of our children's education and our future, we are asking every #{company['display_name_s']} employee to try an Hour of Code. Even if you already know computer science, you can try the modern tutorials, and help others learn. + + Give it a shot. This is a tutorial that even 8-year-olds can do, and it's fun. Let's see how close we can get to 100% participation! + +%br + +#top + #video.col-63.desktop-pad-right{style: 'padding-right: 30px;'} + = view :employee_engagement_video, custom_video_key:company['video_key_s'] + + #start.col-36 + #blurb.col-mobile-56.mobile-pad-right + %br.desktop-feature + + #companystats.col-mobile-44 + .desktop-feature + #blurb.col-mobile-56.mobile-pad-right + %br.desktop-feature + + .count{:style=>'font-size: 32px; line-height: 32px; font-weight:500' } + 5,455 #{company['display_name_s']} employees have tried the Hour of Code. + %h4.desktop-feature{style: 'font-size: 22px;'} + 40% Completed + %br + 60% Not started + %br + + #getstarted.col-mobile-44 + #largegap.mobile-show-medium + %a{:href=>"/api/ee/begin/#{company['name_s']}"} + %button.btn.btn-default + Start now + + + #below.mobile-center{:style=>'clear:both; overflow:hidden; padding-top: 0px'} + -unless company['video_key_s'] + = view :share_buttons, facebook:facebook, twitter:twitter, download_url:"http://s3.amazonaws.com/cdo-videos/HoC-video-15mb.mp4" + +#intro_bottom + -if company['intro_bottom_copy_t'] + =markdown company['intro_bottom_copy_t'] + -else + :markdown + ## Other links: + - Engineers, sign up to be a guest speaker in a classroom via Skype + - Donate to Code.org's crowdfunding campaign to support computer science education in schools + - Ask your local school to organize an Hour of Code + +.row + .col-xs-12 + =view :stats_hoc_2013 diff --git a/pegasus/sites.v3/code.org/public/create-company-profile.haml b/pegasus/sites.v3/code.org/public/create-company-profile.haml new file mode 100644 index 0000000000000..c3add6b373e96 --- /dev/null +++ b/pegasus/sites.v3/code.org/public/create-company-profile.haml @@ -0,0 +1,3 @@ +-#unauthorized! unless dashboard_user +-#forbidden! unless dashboard_user[:admin] +=view :company_profile_form, data:{}, secret:nil diff --git a/pegasus/sites.v3/code.org/public/css/ee.css b/pegasus/sites.v3/code.org/public/css/ee.css new file mode 100644 index 0000000000000..716996ecffa40 --- /dev/null +++ b/pegasus/sites.v3/code.org/public/css/ee.css @@ -0,0 +1,160 @@ +#company_header { + margin-top: 20px; +} +#company_logo { + display: inline-block; + vertical-align: middle; + margin-right: 10px; +} +h1.ee_display_name { + display: inline-block; + margin-top: 0px; + margin-bottom: 0px; + vertical-align: middle; + color: dimgray; +} +#intro_top { + color: black; +} +#intro_top h1 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_top h2 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_top h3 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_top h4 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} + +#intro_bottom { + color: black; +} +#intro_bottom h1 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_bottom h2 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_bottom h3 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} +#intro_bottom h4 { + color: black; + margin-top: 20px; + margin-bottom: 10px; +} + +#video { + float: left; +} + +#start { + float: left; +} + +#index { + margin-bottom: 20px; +} + +#additional_actions { + max-width: 600px; +} + +#top { + background-color: #000; padding: 20px +} + +.count { + color: white; +} + +.count h1 { + color: white; font-size: 56px; line-height: 56px; font-weight: 500; margin: 0px; +} + +@media screen and (max-width: 320px) +{ + .count h1 { + font-size: 52px; + } +} + +.count h2 { + color: white; font-size: 36px; line-height: 36px; font-weight: 600; margin-top:5px; margin-bottom: 0px; +} +.count h3 { + color: white; font-size: 32px; line-height: 32px; font-weight: 400; margin-top:5px; margin-bottom:0px; +} +.count h4 { + color: white; font-size: 26px; line-height: 26px; font-weight: 400; margin-top:15px; +} + +button { + -webkit-appearance: none; + -webkit-user-select: none; + -webkit-writing-mode: horizontal-tb; + align-items: flex-start; + background-color: rgb(255, 128, 0) ; + border-color: rgb(255, 128, 0) ; + background-image: none; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + border-bottom-style: solid; + border-bottom-width: 1px; + border-image-outset: 0px; + border-image-repeat: stretch; + border-image-slice: 100%; + border-image-source: none; + border-image-width: 1; + border-left-style: solid; + border-left-width: 1px; + border-right-style: solid; + border-right-width: 1px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-top-style: solid; + border-top-width: 1px; + box-sizing: border-box; + color: rgb(255, 255, 255); + cursor: pointer; + display: inline-block; + font-family: 'Gotham A','Gotham B',sans-serif; + font-size: 14px; + font-weight: normal; + height: 34px; + letter-spacing: normal; + line-height: 20px; + margin-bottom: 0px; + margin-left: 0px; + margin-right: 0px; + margin-top: 0px; + padding-bottom: 6px; + padding-left: 12px; + padding-right: 12px; + padding-top: 6px; + text-align: center; + text-indent: 0px; + text-shadow: none; + text-transform: none; + vertical-align: middle; + white-space: nowrap; + word-spacing: 0px; + writing-mode: lr-tb; +} diff --git a/pegasus/sites.v3/code.org/public/css/ee_form.css b/pegasus/sites.v3/code.org/public/css/ee_form.css new file mode 100644 index 0000000000000..084ce089c667e --- /dev/null +++ b/pegasus/sites.v3/code.org/public/css/ee_form.css @@ -0,0 +1,3 @@ +form#company_profile { + margin-top: 20px; +} \ No newline at end of file diff --git a/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml b/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml new file mode 100644 index 0000000000000..8f78239a6e494 --- /dev/null +++ b/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml @@ -0,0 +1,3 @@ +-secret = request.splat_path_info[1..-1] +-pass unless form = DB[:forms].where(kind:'CompanyProfile', secret:secret).first +=view :company_profile_form, data:JSON.parse(form[:data]), secret:secret diff --git a/pegasus/sites.v3/code.org/public/images/stats-hoc-2013.png b/pegasus/sites.v3/code.org/public/images/stats-hoc-2013.png new file mode 100644 index 0000000000000000000000000000000000000000..804dcafcc1c3ebc1ef8e001a8fde7f425e208bab GIT binary patch literal 483276 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

u>*FH_d~)cY%AFNG8FA_wu94#~yp` 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

~$pqB3BliU8Yd* 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

MYE3DOnNE%p1{WCHzRF;>0rUxvh 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 z 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

sRdmcS3epmf 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ℑtsS0|x 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

-d0*fX|Dy&AqvnFq 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�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 (u0M10PyXw}iyBg;&W$OIE0t}u=QLWQ7%acZ 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≦{4?5_IL!}2f~kCBXfGNmnx z!(`_rsN3xO%-r6+@3}|j*B-3jA^~Xfq@7RXHsVSg(NIwRy-n&L`3PQ+*f4zB+To$& zDLUB<>23Uo%kUWSdY=?B0&kO3@{zy#j>8{_uv}6+AD;7YHi!ha0-cU)Jv7t zN2WzS(#`^c9Wa^e<3?-i+r5^x>ppA;g}@j}O;f8#G-bzk+~A0pT=&Cy_&fnCUZ`fmG1;!ycM!r)%)_lK`G@moa-CUEkFu zutA8`@mQ}o@~&OwCZjXY!SdR)A3c!bgPirGShq;QVi!TRV_@wTiNz;b_a0S`Ng9Vq zTOv2n=Ma-3LtklQv($Pw*$E;QbS&o%nxUDUL5*Cy45@3AoQjRbyK#nyUb@9I4q;V?RxEdG-& zvSn6PUEv^Ocv9)41du4R_X`*3KZA%vCGbjq;omNM>ZbJYARVXAB=hZx?A6#UGJ#y- zpYfs#8jt6KT=AhT-vdtqIb|$F@h<t%1gSgw+3(Dv;^< zN$qi~@uw(OI5b!1&QN?S@O>f=1wOn7Q)+p`1y68b{UyuKA(KC)Y6b=VEmNEHJ5ej; z?&RLFKFq=POI`0?+x`jJYi(;v`ELTj>Z29768*06nB{t!_Zgb5uMoaGmWb1vBmLrv zJjsB2cZ-w8{vFMhvnHO`H=Sy7N}Btchs*V->O36sb8a#-ZG(Vchn7z>%bA`g+;*Tg zR-8UNcpYjN!NaRJh?9bMWIcl@&sO??0P0_`_XYK`V9YPJ89?my5!pm z?+=5vM4vGe`BS^Gd{+m*wCCjB9)@CuwF9Y$zsAH8S2`m1ndBqsLF* zeyi$o=k!?Fk?gkmS7&3)a+l`Ov%M zK>q`L*qFH`W>}yJhR=|x;r*x>g&k?{Set4HQO6l?W(1RLsYI8bq5qfGawM$WnWb_Z zj;TUhC#9lPv-H0J!9YI0TQZ-0?6&Na`kk&-MGu`1L>&7$p*@!CwXXYs2fIo*JSggv z%f*Qo!Iqu&w#B)3Z_m8`8?oPTZD8NeA4D85Lmn{RZCp&wwdJuU=&_vL_I{D}sPJBq{jHk4r z)#Ny4##r{SzJ5LHB|pT9>Ds6nxebeq)*IDmo$=X=@`#%Q17qIk1_SQ ztXa^M;osp4Dj>u(o$Y1Bvn;gqt`hy{yR2*UAQ{aN5SZ<`% z7UVcQMDyfPN1Ly26++vM_iu;oap*?me!~I-OPu;mr1J<jo~byekE6Gj>cFG?=ny3QC~A%vDMdBNbg~FinhV2W`@pNqvblRp|I@TJJjA+_pp;+u5LlTwUMro;2_jxniu-yfyXg)q$gLh%UI<|E)It z(v~}BreC`wcGVL`i;AN0`0VHPCWf1dC(d8-+hpmI{Ae0*)#EHe#nUBjI4BB7}(7V^eykE-@3Kn zf`4h#F7qEz$DGvsKU1Y84~9?t<>$}V&9jU~+QXTo6zO&*3^{{K%{V?6#$tfxW(GSQ&h5 z^8FXm&+p>Y5^>T=BrRP!S{Ztrx%h7^w^bT+tz1e1RFG`Nj6@hPiQ7-z+1mJln{Hu6 zQsD~H`EB%11Kkjp>y;LCRz(fj*)`&ch|B$w)hJPLYaxhR4j?-m}Eo zr-d)RKQgChzksO?xfR`}n1VL-{M@P^I5qFGv3igy4oyD2D=U>q~i9yFLYm8XGYdStQ1jhaDq){J7`8 zxP)VaEFThwF7P(x2+J7=3dn@&8Gj6oBib4Oq>a@pf$hbtJ>&7Qs0q%1Q3SJs{-cJl^r9TVKvbu1f*T=Z9;J(JaBz%03PsrB^o&Gke0aY){Jd`VOvp;* zgwWBy%zgH%n{EF5*;?yfbW6krI$pCvuKHw(V;3#RFSNANJ=3VrV zTyAF<{ZQXj(>cfx0O*jf7D}gtj`_L0qlk>8$ zV!k@|c$D}MnIq+XQ~g?JdB|KY6alH_Y+!&ge!^i+o(~ncxt84fkC^*v%^l0E<|LkV zY%f)+Y-gKsmmxDEcg)Gtj5QB-{Aqf}gSY5Aw!>V)*|*YI`3xgh39;az-c+4*k{D#& z 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 Date: Mon, 22 Sep 2014 10:46:38 -0700 Subject: [PATCH 03/11] store sprite.value again, use it properly in setSpriteSize --- blockly/src/studio/studio.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/blockly/src/studio/studio.js b/blockly/src/studio/studio.js index cb767660eae61..25e5b23e6c71d 100644 --- a/blockly/src/studio/studio.js +++ b/blockly/src/studio/studio.js @@ -1793,12 +1793,15 @@ Studio.setSpriteSpeed = function (opts) { Studio.setSpriteSize = function (opts) { Studio.sprite[opts.spriteIndex].size = opts.value; + var curSpriteValue = Studio.sprite[opts.spriteIndex].value; - // call setSprite with existing index/value now that we changed the size - Studio.setSprite({ - spriteIndex: opts.spriteIndex, - value: Studio.sprite[opts.spriteIndex].value - }); + if (curSpriteValue !== 'hidden') { + // call setSprite with existing index/value now that we changed the size + Studio.setSprite({ + spriteIndex: opts.spriteIndex, + value: curSpriteValue + }); + } }; Studio.changeScore = function (opts) { @@ -1852,6 +1855,7 @@ Studio.setSprite = function (opts) { (skin[spriteValue].spriteHeight || Studio.DEFAULT_SPRITE_HEIGHT); sprite.width = sprite.size * (skin[spriteValue].spriteWidth || Studio.DEFAULT_SPRITE_WIDTH); + sprite.value = opts.forceHidden ? 'hidden' : opts.value; var spriteClipRect = document.getElementById('spriteClipRect' + spriteIndex); spriteClipRect.setAttribute('width', sprite.width); From 4bb51b9d28a853d476631efda16a1fc2bb04b48a Mon Sep 17 00:00:00 2001 From: davidsbailey Date: Mon, 22 Sep 2014 11:06:13 -0700 Subject: [PATCH 04/11] Update activity-monitor exclude Yandex Browser --- bin/activity-monitor | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/activity-monitor b/bin/activity-monitor index e52ae6cd6d068..c0ce9ee8bdca8 100755 --- a/bin/activity-monitor +++ b/bin/activity-monitor @@ -20,6 +20,7 @@ ExcludedBrowsers = [ 'Other', 'Slurp', 'TwitterBot', + 'Yandex Browser', 'YandexBot', 'Mo%20PTT/50 CFNetwork/672.1.15 Darwin/14.0.0' ] From e844d06c1ff524b2ab86e7f670e2d945a1840a44 Mon Sep 17 00:00:00 2001 From: Tanya Parker Date: Mon, 22 Sep 2014 11:31:03 -0700 Subject: [PATCH 05/11] update code-dot-org README --- README.md | 50 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 35 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index da85242adc974..e2e95b4b9c1b1 100644 --- a/README.md +++ b/README.md @@ -44,9 +44,9 @@ Many Windows developers have found that setting up an Ubuntu virtual machine is * `\curl -sSL https://get.rvm.io | bash -s stable` * `source ~/.rvm/scripts/rvm` * `rvm install 2.0.0-p451` -1. `git clone https://github.com/code-dot-org/website-ci.git` +1. `git clone https://github.com/code-dot-org/code-dot-org.git` 1. `gem install bundler` -1. `cd website-ci/aws` +1. `cd code-dot-org/aws` 1. `bundle install` 1. `cd ../dashboard` 1. `bundle install` @@ -57,23 +57,37 @@ Many Windows developers have found that setting up an Ubuntu virtual machine is 1. `rake db:migrate` 1. `rake seed:migrate` -# Running Dashboard (aka [learn.code.org](http://learn.code.org)) +## Organizational Structure +Our code is segmented into four parts: -1. `cd website-ci/dashboard` -1. `bundle exec rails server` - * Note: after major code updates (or if something seems broken), run `bundle exec rake db:migrate seed:all` +* Blockly Core is the visual programming language platform used for the interactive tutorials. +* Blockly includes apps—blockly puzzles built based on Blockly Core. + * [Hour of Code](http://studio.code.org/hoc/1) +* Dashboard, is the tutorial platform which organizes blockly levels into tutorials. + * [Code Studio](http://studio.code.org) +* Pegasus is the main site which also includes the teacher dashboard (support for teachers to track student progress). + * [code.org](http://code.org) + * [csedweek.org](http://csedweek.org) + * [Teacher Dashboard](http://code.org/teacher-dashboard) -# Running Pegasus (aka [code.org](http://code.org), [csedweek.org](http://csedweek.org), etc...) +## Running Dashboard +1. `cd code-dot-org/dashboard` +2. `bundle exec rails server` +3. Note: after major code updates (or if something seems broken), run `bundle exec rake db:migrate seed:all` +4. Visit [http://localhost.studio.code.org:3000/](http://localhost.studio.code.org:3000/) -1. `cd website-ci/pegasus` -1. `./up` - * Note: after major code updates (or if something seems broken), run `rake db:migrate seed:migrate` +## Running Pegasus -# (optional) Building blockly and blockly-core (i.e., [puzzles](http://learn.code.org/hoc/1)) +1. `cd code-dot-org/pegasus` +2. `./up` +3. Note: after major code updates (or if something seems broken), run `rake db:migrate seed:migrate` +4. Visit [http://localhost.code.org:9393/](http://localhost.code.org:9393/) + +## Building Blockly and Blockly-core (optional) The learn.code.org default dashboard install includes a static build of blockly, but if you want to make modifications to blockly or blockly-core: -1. `cd website-ci/dashboard` +1. `cd code-dot-org/dashboard` 1. `bundle exec rake 'blockly:dev[../blockly]'` * This symlinks to dashboard reference the dev version of blockly 1. Follow the blockly build instructions at `blockly/README` or blockly-core build instructions at `blockly-core/README` @@ -130,7 +144,13 @@ Contributors should follow the GitHub [fork-and-pull model](https://help.github. - `git add YYY` - `git commit -m "ZZZ"` - `git push origin branch_name` -3. Go to the website-ci GitHub page - - [https://github.com/code-dot-org/website-ci](https://github.com/code-dot-org/website-ci) -4. Click on the "Pull Request" link, look over your diff, and submit it to others to review. +3. Go to the code-dot-org GitHub page + - [https://github.com/code-dot-org/code-dot-org](https://github.com/code-dot-org/code-dot-org) +4. For your submissinon to be reviewed + - Click on the "Pull Request" link, look over and confirm your diff + - Submit a pull request for your branch to be merged into staging - For bonus points, include screenshots in the description. Command + Ctrl + Shift + 4 in OS X lets you copy a screen selection to your clipboard, which GitHub will let you paste right into the description +5. After your pull request is merged into staging, you can review your changes on the following sites: + * [http://staging.code.org/](http://staging.code.org/) + * [http://staging.studio.code.org/](http://staging.studio.code.org/) + * [http://staging.csedweek.org/](http://staging.csedweek.org/) From 207e4dbbc7eaba21de107e292355271e2c9cc0b8 Mon Sep 17 00:00:00 2001 From: Brian Jordan Date: Mon, 22 Sep 2014 12:12:02 -0700 Subject: [PATCH 06/11] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e2e95b4b9c1b1..acea6e9aeeb7f 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Many Windows developers have found that setting up an Ubuntu virtual machine is less painful than getting Ruby and other prerequisites running on Windows. -* Option A: Use VirtualBox and an [Ubuntu 14.04 iso image](http://releases.ubuntu.com/14.04.1/ubuntu-14.04.1-desktop-amd64.iso) +* Option A: Use [VMWare Player](https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/4_0) and an [Ubuntu 14.04 iso image](http://releases.ubuntu.com/14.04.1/ubuntu-14.04.1-desktop-amd64.iso) * Option B: Use vagrant ([install](https://docs.vagrantup.com/v2/installation/)): 1. `vagrant init ubuntu/trusty64` 1. Configure to use 2048mb rather than 512mb RAM ([instructions](https://docs.vagrantup.com/v2/virtualbox/configuration.html)) From c80ec200a33e23c5fa0d4e90553bdd37d71fa15d Mon Sep 17 00:00:00 2001 From: Continuous Integration Date: Mon, 22 Sep 2014 19:28:11 +0000 Subject: [PATCH 07/11] Automatically built. commit fb1b2d610f3b408a563cb8a92e21ac4f3c9bc7cb Merge: 207e4db 0713f6b Author: cpirich Date: Mon Sep 22 12:13:28 2014 -0700 Merge pull request #2 from code-dot-org/fix_setSprite store sprite.value again, use it properly in setSpriteSize commit 207e4dbbc7eaba21de107e292355271e2c9cc0b8 Author: Brian Jordan Date: Mon Sep 22 12:12:02 2014 -0700 Update README.md --- .../public/blockly-package/js/af_za/studio.js | 14 +++++++++----- .../public/blockly-package/js/af_za/studio.min.js | 2 +- .../public/blockly-package/js/ar_sa/studio.js | 14 +++++++++----- .../public/blockly-package/js/ar_sa/studio.min.js | 2 +- .../public/blockly-package/js/az_az/studio.js | 14 +++++++++----- .../public/blockly-package/js/az_az/studio.min.js | 2 +- .../public/blockly-package/js/bg_bg/studio.js | 14 +++++++++----- .../public/blockly-package/js/bg_bg/studio.min.js | 2 +- .../public/blockly-package/js/bn_bd/studio.js | 14 +++++++++----- .../public/blockly-package/js/bn_bd/studio.min.js | 2 +- .../public/blockly-package/js/ca_es/studio.js | 14 +++++++++----- .../public/blockly-package/js/ca_es/studio.min.js | 2 +- .../public/blockly-package/js/cs_cz/studio.js | 14 +++++++++----- .../public/blockly-package/js/cs_cz/studio.min.js | 2 +- .../public/blockly-package/js/cy_gb/studio.js | 14 +++++++++----- .../public/blockly-package/js/cy_gb/studio.min.js | 2 +- .../public/blockly-package/js/da_dk/studio.js | 14 +++++++++----- .../public/blockly-package/js/da_dk/studio.min.js | 2 +- .../public/blockly-package/js/de_de/studio.js | 14 +++++++++----- .../public/blockly-package/js/de_de/studio.min.js | 2 +- .../public/blockly-package/js/el_gr/studio.js | 14 +++++++++----- .../public/blockly-package/js/el_gr/studio.min.js | 2 +- .../public/blockly-package/js/en_ploc/studio.js | 14 +++++++++----- .../blockly-package/js/en_ploc/studio.min.js | 2 +- .../public/blockly-package/js/en_us/studio.js | 14 +++++++++----- .../public/blockly-package/js/en_us/studio.min.js | 2 +- .../public/blockly-package/js/es_es/studio.js | 14 +++++++++----- .../public/blockly-package/js/es_es/studio.min.js | 2 +- .../public/blockly-package/js/eu_es/studio.js | 14 +++++++++----- .../public/blockly-package/js/eu_es/studio.min.js | 2 +- .../public/blockly-package/js/fa_ir/studio.js | 14 +++++++++----- .../public/blockly-package/js/fa_ir/studio.min.js | 2 +- .../public/blockly-package/js/fi_fi/studio.js | 14 +++++++++----- .../public/blockly-package/js/fi_fi/studio.min.js | 2 +- .../public/blockly-package/js/fil_ph/studio.js | 14 +++++++++----- .../public/blockly-package/js/fil_ph/studio.min.js | 2 +- .../public/blockly-package/js/fr_fr/studio.js | 14 +++++++++----- .../public/blockly-package/js/fr_fr/studio.min.js | 2 +- .../public/blockly-package/js/he_il/studio.js | 14 +++++++++----- .../public/blockly-package/js/he_il/studio.min.js | 2 +- .../public/blockly-package/js/hi_in/studio.js | 14 +++++++++----- .../public/blockly-package/js/hi_in/studio.min.js | 2 +- .../public/blockly-package/js/hr_hr/studio.js | 14 +++++++++----- .../public/blockly-package/js/hr_hr/studio.min.js | 2 +- .../public/blockly-package/js/hu_hu/studio.js | 14 +++++++++----- .../public/blockly-package/js/hu_hu/studio.min.js | 2 +- .../public/blockly-package/js/id_id/studio.js | 14 +++++++++----- .../public/blockly-package/js/id_id/studio.min.js | 2 +- .../public/blockly-package/js/is_is/studio.js | 14 +++++++++----- .../public/blockly-package/js/is_is/studio.min.js | 2 +- .../public/blockly-package/js/it_it/studio.js | 14 +++++++++----- .../public/blockly-package/js/it_it/studio.min.js | 2 +- .../public/blockly-package/js/ja_jp/studio.js | 14 +++++++++----- .../public/blockly-package/js/ja_jp/studio.min.js | 2 +- .../public/blockly-package/js/ko_kr/studio.js | 14 +++++++++----- .../public/blockly-package/js/ko_kr/studio.min.js | 2 +- .../public/blockly-package/js/lt_lt/studio.js | 14 +++++++++----- .../public/blockly-package/js/lt_lt/studio.min.js | 2 +- .../public/blockly-package/js/ms_my/studio.js | 14 +++++++++----- .../public/blockly-package/js/ms_my/studio.min.js | 2 +- .../public/blockly-package/js/nl_nl/studio.js | 14 +++++++++----- .../public/blockly-package/js/nl_nl/studio.min.js | 2 +- .../public/blockly-package/js/no_no/studio.js | 14 +++++++++----- .../public/blockly-package/js/no_no/studio.min.js | 2 +- .../public/blockly-package/js/pl_pl/studio.js | 14 +++++++++----- .../public/blockly-package/js/pl_pl/studio.min.js | 2 +- .../public/blockly-package/js/pt_br/studio.js | 14 +++++++++----- .../public/blockly-package/js/pt_br/studio.min.js | 2 +- .../public/blockly-package/js/pt_pt/studio.js | 14 +++++++++----- .../public/blockly-package/js/pt_pt/studio.min.js | 2 +- .../public/blockly-package/js/ro_ro/studio.js | 14 +++++++++----- .../public/blockly-package/js/ro_ro/studio.min.js | 2 +- .../public/blockly-package/js/ru_ru/studio.js | 14 +++++++++----- .../public/blockly-package/js/ru_ru/studio.min.js | 2 +- .../public/blockly-package/js/sk_sk/studio.js | 14 +++++++++----- .../public/blockly-package/js/sk_sk/studio.min.js | 2 +- .../public/blockly-package/js/sl_si/studio.js | 14 +++++++++----- .../public/blockly-package/js/sl_si/studio.min.js | 2 +- .../public/blockly-package/js/sq_al/studio.js | 14 +++++++++----- .../public/blockly-package/js/sq_al/studio.min.js | 2 +- .../public/blockly-package/js/sr_sp/studio.js | 14 +++++++++----- .../public/blockly-package/js/sr_sp/studio.min.js | 2 +- .../public/blockly-package/js/sv_se/studio.js | 14 +++++++++----- .../public/blockly-package/js/sv_se/studio.min.js | 2 +- .../public/blockly-package/js/ta_in/studio.js | 14 +++++++++----- .../public/blockly-package/js/ta_in/studio.min.js | 2 +- .../public/blockly-package/js/th_th/studio.js | 14 +++++++++----- .../public/blockly-package/js/th_th/studio.min.js | 2 +- .../public/blockly-package/js/tr_tr/studio.js | 14 +++++++++----- .../public/blockly-package/js/tr_tr/studio.min.js | 2 +- .../public/blockly-package/js/uk_ua/studio.js | 14 +++++++++----- .../public/blockly-package/js/uk_ua/studio.min.js | 2 +- .../public/blockly-package/js/ur_pk/studio.js | 14 +++++++++----- .../public/blockly-package/js/ur_pk/studio.min.js | 2 +- .../public/blockly-package/js/vi_vn/studio.js | 14 +++++++++----- .../public/blockly-package/js/vi_vn/studio.min.js | 2 +- .../public/blockly-package/js/zh_cn/studio.js | 14 +++++++++----- .../public/blockly-package/js/zh_cn/studio.min.js | 2 +- .../public/blockly-package/js/zh_tw/studio.js | 14 +++++++++----- .../public/blockly-package/js/zh_tw/studio.min.js | 2 +- 100 files changed, 500 insertions(+), 300 deletions(-) diff --git a/dashboard/public/blockly-package/js/af_za/studio.js b/dashboard/public/blockly-package/js/af_za/studio.js index 2e3741662d8ea..fe581b0da9852 100644 --- a/dashboard/public/blockly-package/js/af_za/studio.js +++ b/dashboard/public/blockly-package/js/af_za/studio.js @@ -12957,12 +12957,15 @@ Studio.setSpriteSpeed = function (opts) { Studio.setSpriteSize = function (opts) { Studio.sprite[opts.spriteIndex].size = opts.value; + var curSpriteValue = Studio.sprite[opts.spriteIndex].value; - // call setSprite with existing index/value now that we changed the size - Studio.setSprite({ - spriteIndex: opts.spriteIndex, - value: Studio.sprite[opts.spriteIndex].value - }); + if (curSpriteValue !== 'hidden') { + // call setSprite with existing index/value now that we changed the size + Studio.setSprite({ + spriteIndex: opts.spriteIndex, + value: curSpriteValue + }); + } }; Studio.changeScore = function (opts) { @@ -13016,6 +13019,7 @@ Studio.setSprite = function (opts) { (skin[spriteValue].spriteHeight || Studio.DEFAULT_SPRITE_HEIGHT); sprite.width = sprite.size * (skin[spriteValue].spriteWidth || Studio.DEFAULT_SPRITE_WIDTH); + sprite.value = opts.forceHidden ? 'hidden' : opts.value; var spriteClipRect = document.getElementById('spriteClipRect' + spriteIndex); spriteClipRect.setAttribute('width', sprite.width); diff --git a/dashboard/public/blockly-package/js/af_za/studio.min.js b/dashboard/public/blockly-package/js/af_za/studio.min.js index 47c2d0a1ccc5c..c29c7be046cf4 100644 --- a/dashboard/public/blockly-package/js/af_za/studio.min.js +++ b/dashboard/public/blockly-package/js/af_za/studio.min.js @@ -2,7 +2,7 @@ if("string"==typeof i){if(b=b||Blockly.Generator.workspaceToCode("JavaScript"),-1!==b.indexOf(i)){g=!0;break}}else{if("function"!=typeof i)throw new Error("Bad test: "+i);if(c.some(i)){g=!0;break}}}g||(d++,a=a.concat(BlocklyApps.REQUIRED_BLOCKS[e][0]))}return a};c.hasExtraTopBlocks=function(){for(var a=Blockly.mainWorkspace.getTopBlocks(),b=0;bBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/af_za/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/af_za/common":40,"../../locale/af_za/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push('\n\n

\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/af_za/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/af_za/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/af_za/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/af_za/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/af_za/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/af_za/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.af=function(a){return 1===a?"one":"other"},c.and=function(){return"and"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Aksies"},c.catColour=function(){return"Kleur"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Lyste"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"See generated JavaScript code."},c.continue=function(){return"Gaan voort"},c.dialogCancel=function(){return"Kanselleer"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Congratulations! You have completed the final stage."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"af",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Help"},c.hintTitle=function(){return"Hint:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"lys"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"af",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"af",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"af",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"af",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"herhaal"},c.resetProgram=function(){return"Stel terug"},c.runProgram=function(){return"Run Program"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Show Code"},c.showGeneratedCode=function(){return"Show code"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"teks"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blokke"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"af",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Probeer weer"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Oneindig"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.af=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Aksies"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Gaan voort"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"emotion"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"random"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"random"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"teks"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Yes"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ar_sa/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ar_sa/common":40,"../../locale/ar_sa/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ar_sa/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ar_sa/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ar_sa/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ar_sa/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ar_sa/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ar_sa/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ar=function(a){return 0===a?"zero":1==a?"one":2==a?"two":a%100>=3&&10>=a%100&&a==Math.floor(a)?"few":a%100>=11&&99>=a%100&&a==Math.floor(a)?"many":"other"},c.and=function(){return"و"},c.blocklyMessage=function(){return"بلوكلي"},c.catActions=function(){return"الاجراءات"},c.catColour=function(){return"لون"},c.catLogic=function(){return"العمليات المنطقية"},c.catLists=function(){return"القوائم والمصفوفات"},c.catLoops=function(){return"الجمل التكرارية"},c.catMath=function(){return"العمليات الحسابية"},c.catProcedures=function(){return"الدوال"},c.catText=function(){return"الجمل"},c.catVariables=function(){return"المتغيرات"},c.codeTooltip=function(){return"شاهد كود الـ JavaScript ."},c.continue=function(){return"أستمر"},c.dialogCancel=function(){return"إلغاء"},c.dialogOK=function(){return"موافق"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"نهاية"},c.emptyBlocksErrorMsg=function(){return'قطعة " أكرر" أو " اذا " تحتاج ان تحتوي على قطع اخرى داخلها من اجل العمل . تأكد من القطع الداخلية بحيث يجب ان تكون تناسب القطع المحتوية في الداخل .'},c.emptyFunctionBlocksErrorMsg=function(){return"كتلة الدالة يحتاج إلى الكتل الأخرى داخله لكي يعمل."},c.extraTopBlocks=function(){return"لديك قطع إضافية لم ترفق على قطع الحدث."},c.finalStage=function(){return"تهانينا! لقد اتممت المرحلة النهائية."},c.finalStageTrophies=function(a){return"تهانينا! لقد أكملت المرحلة النهائية وفزت بـ "+p(a,"numTrophies",0,"ar",{one:"جائزة",other:n(a,"numTrophies")+" جوائز"})+"."},c.finish=function(){return"إنهاء"},c.generatedCodeInfo=function(a){return"حتى أفضل الجامعات تعلم الكود البرمجي المبني على القطع (على سبيل المثال، "+v(a,"berkeleyLink")+"، "+v(a,"harvardLink")+"). ولكن في الحقيقه، يمكن للقطع التي جمعتها انت في الظهور في الجافا سكريبت، وهو أكثر لغة كود برمجي مستخدم في العالم:"},c.hashError=function(){return"عذرا , %1 لايتوافق مع اي البرامج المحفوظة ."},c.help=function(){return"مساعدة"},c.hintTitle=function(){return"تلميح:"},c.jump=function(){return"قفز"},c.levelIncompleteError=function(){return"أنت استخدمت كل انواع القطع الضرورية ولكن ليس في الطريق الصحيح."},c.listVariable=function(){return"قائمة"},c.makeYourOwnFlappy=function(){return"برمج لعبة فلابي الخاصة بك"},c.missingBlocksErrorMsg=function(){return"استخدم القطع الموجودة في الاسفل لحل هذا اللغز."},c.nextLevel=function(a){return"تهانينا ! أنت اكملت اللغز "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"تهانينا! لقد أكملت اللغز "+v(a,"puzzleNumber")+" وفزت بـ "+p(a,"numTrophies",0,"ar",{one:"جائزة",other:n(a,"numTrophies")+" جوائز"})+"."},c.nextStage=function(a){return"تهانينا! لقد أكملت مرحلة "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"تهانينا! لقد أكملت المرحلة "+v(a,"stageNumber")+" وفزت بـ "+p(a,"numTrophies",0,"ar",{one:"جائزة",other:n(a,"numTrophies")+" جوائز"})+"." },c.numBlocksNeeded=function(a){return"تهانينا! لقد أكملت اللغز "+v(a,"puzzleNumber")+". (لكن كان بامكانك استخذام "+p(a,"numBlocks",0,"ar",{one:"1 بلوك",other:n(a,"numBlocks")+" بلوكات"})+".) فقط"},c.numLinesOfCodeWritten=function(a){return"لقد كتبت "+p(a,"numLines",0,"ar",{one:"سطر1",other:n(a,"numLines")+" سطور"})+" من الكود البرمجي!"},c.play=function(){return"إلعب"},c.puzzleTitle=function(a){return"اللغز "+v(a,"puzzle_number")+" من "+v(a,"stage_total")},c.repeat=function(){return"إعادة"},c.resetProgram=function(){return"إعادة تعيين"},c.runProgram=function(){return"تشغيل"},c.runTooltip=function(){return"تنفيذ البرنامج هو الامر الذي يقوم بتنفيذ القطع في مساحة العمل البيضاء."},c.score=function(){return"النتيجة"},c.showCodeHeader=function(){return"اظهار الكود البرمجي"},c.showGeneratedCode=function(){return"اظهار الكود البرمجي"},c.subtitle=function(){return"بيئة البرمجة المرئية"},c.textVariable=function(){return"نص"},c.tooFewBlocksMsg=function(){return"أنت استخدمت كل انواع القطع الضرورية ولكن حاول ان تستخدم المزيد من هذه الأنواع من القطع لأكمال هذا اللغز."},c.tooManyBlocksMsg=function(){return"يمكن حل هذا اللغز مع قطع."},c.tooMuchWork=function(){return"جعلتني أقوم بالكثير من العمل! هل بإمكانك أن تحاول جعل مرات التكرار أقل؟"},c.toolboxHeader=function(){return"قطع"},c.openWorkspace=function(){return"كيف يعمل ذلك"},c.totalNumLinesOfCodeWritten=function(a){return"مجموع كل الاوقات: "+p(a,"numLines",0,"ar",{one:"1 خط",other:n(a,"numLines")+" خطوط"})+" من الكود البرمجي."},c.tryAgain=function(){return"حاول مرة أخرى"},c.hintRequest=function(){return"شاهد التلميح"},c.backToPreviousLevel=function(){return"الرجوع إلى المستوى السابق"},c.saveToGallery=function(){return"حفظ في معرض الصور الخاص بك"},c.savedToGallery=function(){return"حفظ في معرض الصور الخاص بك!"},c.typeCode=function(){return"اكتب كود الـ JavaScript الخاص بك تحت هذه التعليمات."},c.typeFuncs=function(){return"الدوال المتاحة: %1"},c.typeHint=function(){return"تذكر أن الأقواس والفواصل المنقوطة ضرورية."},c.workspaceHeader=function(){return"أجمع القطع هنا: "},c.infinity=function(){return"ما لانهاية"},c.rotateText=function(){return"دور النص."},c.orientationLock=function(){return"قم بتعطيل قفل التوجه في اعدادات المستخدم."},c.wantToLearn=function(){return"هل تريد أن تتعلم البرمجة؟"},c.watchVideo=function(){return"شاهد الفيديو"},c.when=function(){return"عندما"},c.whenRun=function(){return"عند التنفيذ"},c.tryHOC=function(){return'جرب "Hour of Code"'},c.signup=function(){return"سجل لمشاهدة مقدمة الدورة"},c.hintHeader=function(){return"إليك نصيحة:"},c.genericFeedback=function(){return"راقب كيف انتهى، ثم حاول إصلاح البرنامج."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ar=function(a){return 0===a?"zero":1==a?"one":2==a?"two":a%100>=3&&10>=a%100&&a==Math.floor(a)?"few":a%100>=11&&99>=a%100&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"الممثل"},c.catActions=function(){return"الأفعال"},c.catControl=function(){return"الجمل التكرارية"},c.catEvents=function(){return"الأحداث"},c.catLogic=function(){return"منطق"},c.catMath=function(){return"العمليات الحسابية"},c.catProcedures=function(){return"الدوال"},c.catText=function(){return"نص"},c.catVariables=function(){return"المتغيرات"},c.changeScoreTooltip=function(){return"إضافة أو إزالة نقطة ليسجل."},c.changeScoreTooltipK1=function(){return"إضافة نقطة إلى النقاط."},c.continue=function(){return"استمرار"},c.decrementPlayerScore=function(){return"إزالة نقطة"},c.defaultSayText=function(){return"اكتب هنا"},c.emotion=function(){return"الحالة"},c.finalLevel=function(){return"تهانينا ! لقد قمت بحل اللغز الاخير."},c.hello=function(){return"مرحبا"},c.helloWorld=function(){return"مرحباً بالعالم!"},c.incrementPlayerScore=function(){return"تحصيل نقطة"},c.makeProjectileDisappear=function(){return"تختفي"},c.makeProjectileBounce=function(){return"ترتد"},c.makeProjectileBlueFireball=function(){return"إصنع كرة ملتهلة زرقاء"},c.makeProjectilePurpleFireball=function(){return"إصنع كرة ملتهلة أرجوانية"},c.makeProjectileRedFireball=function(){return"إصنع كرة ملتهلة حمراء"},c.makeProjectileYellowHearts=function(){return"إصنع قلوب صفراء"},c.makeProjectilePurpleHearts=function(){return"إصنع قلوب أرجوانية"},c.makeProjectileRedHearts=function(){return"إصنع قلوب حمراء"},c.makeProjectileTooltip=function(){return"جعل القذيفة التي اصطدمت فقط تختفي أو ترتد."},c.makeYourOwn=function(){return"اجعل القصة الخاصة بك "},c.moveDirectionDown=function(){return"إلى أسفل"},c.moveDirectionLeft=function(){return"اليسار"},c.moveDirectionRight=function(){return"اليمين"},c.moveDirectionUp=function(){return"لأعلى"},c.moveDirectionRandom=function(){return"عشوائي"},c.moveDistance25=function(){return"25 بكسل"},c.moveDistance50=function(){return"50 بكسل"},c.moveDistance100=function(){return"100 بكسل"},c.moveDistance200=function(){return"200 بكسل"},c.moveDistance400=function(){return"400 بكسل"},c.moveDistancePixels=function(){return"بكسل"},c.moveDistanceRandom=function(){return" بكسل عشوائي"},c.moveDistanceTooltip=function(){return"التحرك فاعل على مسافة محددة في الاتجاه المحدد."},c.moveSprite=function(){return"تحرك"},c.moveSpriteN=function(a){return"تحريك الصورة "+v(a,"spriteIndex")},c.moveDown=function(){return"تحريك لأسفل"},c.moveDownTooltip=function(){return"نقل عنصر فاعل إلى أسفل."},c.moveLeft=function(){return"تحرك لليسار"},c.moveLeftTooltip=function(){return"نقل عنصر فاعل إلى اليسار."},c.moveRight=function(){return"تحريك لليمين"},c.moveRightTooltip=function(){return"نقل عنصر فاعل إلى اليمين."},c.moveUp=function(){return"تحريك لأعلى"},c.moveUpTooltip=function(){return"تحريك عنصر فاعل لأعلى."},c.moveTooltip=function(){return"نقل عنصر فاعل."},c.nextLevel=function(){return"تهانينا! لقد قمت بإكمال هذا اللغز."},c.no=function(){return"لا"},c.numBlocksNeeded=function(){return"يمكن حل هذا اللغز مع % 1من الكتل ."},c.ouchExclamation=function(){return"أي (الم) !"},c.playSoundCrunch=function(){return"تشغيل صوت انسحاق"},c.playSoundGoal1=function(){return"تشغيل صوت الهدف 1"},c.playSoundGoal2=function(){return"تشغيل صوت الهدف 2"},c.playSoundHit=function(){return"تشغيل صوت ضرب"},c.playSoundLosePoint=function(){return"تشغيل صوت فقد نقطة"},c.playSoundLosePoint2=function(){return"تشغيل صوت فقد نقطة 2"},c.playSoundRetro=function(){return"تشغيل صوت الرجعية"},c.playSoundRubber=function(){return"تشغيل صوت المطاط"},c.playSoundSlap=function(){return"تشغيل صوت صفعة"},c.playSoundTooltip=function(){return"تشغيل الصوت المختار."},c.playSoundWinPoint=function(){return"تشغيل صوت الفوز بنقطة"},c.playSoundWinPoint2=function(){return"تشغيل صوت الفوز بنقطة 2"},c.playSoundWood=function(){return"تشغيل صوت الخشب"},c.positionOutTopLeft=function(){return"إلى الموضع الأيسر العلوي أعلاه"},c.positionOutTopRight=function(){return"إلى الموضع الأيمن العلوي أعلاه"},c.positionTopOutLeft=function(){return"إلى الأعلى خارج الموضع الأيسر"},c.positionTopLeft=function(){return"إلى أعلى يسار"},c.positionTopCenter=function(){return"إلى أعلى المركز"},c.positionTopRight=function(){return"إلى الأيمن العلوي"},c.positionTopOutRight=function(){return"إلى الموضع الأيمن العلوي الخارجي"},c.positionMiddleLeft=function(){return"إلى الوسط الأيسر"},c.positionMiddleCenter=function(){return"إلى مركز الوسط"},c.positionMiddleRight=function(){return"الى يمين الوسط"},c.positionBottomOutLeft=function(){return"إلى الأسفل خارج الموضع الأيسر"},c.positionBottomLeft=function(){return"إلى الأيسر السفلي"},c.positionBottomCenter=function(){return"إلى مركز القاع"},c.positionBottomRight=function(){return"إلى الأيمن السفلي"},c.positionBottomOutRight=function(){return"إلى الأسفل خارج الموقف الايمن"},c.positionOutBottomLeft=function(){return"لأسفل أسفل اليسار موقف"},c.positionOutBottomRight=function(){return"لأدناه الموضع الأيمن السفلي"},c.positionRandom=function(){return"إلى مكان عشوائي"},c.projectileBlueFireball=function(){return"كرة ملتهبة زرقاء"},c.projectilePurpleFireball=function(){return"كرة ملتهبة أرجوانية"},c.projectileRedFireball=function(){return"كرة ملتهبة حمراء"},c.projectileYellowHearts=function(){return"قلوب صفراء"},c.projectilePurpleHearts=function(){return"قلوب أرجوانية"},c.projectileRedHearts=function(){return"قلوب حمراء"},c.projectileRandom=function(){return"عشوائي"},c.reinfFeedbackMsg=function(){return'يمكنك الضغط على زر "حاول مرة أخرى" للعودة للعبة الخاصة بك.'},c.repeatForever=function(){return"تكرار إلى الأبد"},c.repeatDo=function(){return"نفّذ"},c.repeatForeverTooltip=function(){return"تنفيذ الإجراءات في هذه الكتلة مرارا وتكرارا أثناء تشغيل القصة."},c.saySprite=function(){return"قول"},c.saySpriteN=function(a){return"يقول الممثل "+v(a,"spriteIndex")},c.saySpriteTooltip=function(){return"يطفو على فقاعة كلام مع النص المرتبط به من الفاعل المحدد."},c.scoreText=function(a){return"النقاط: "+v(a,"playerScore")},c.setBackground=function(){return"تعيين خلفية"},c.setBackgroundRandom=function(){return"تعيين خلفية عشوائية"},c.setBackgroundBlack=function(){return"تعيين خلفية سوداء"},c.setBackgroundCave=function(){return"تعيين خلفية المغارة"},c.setBackgroundCloudy=function(){return"تعيين خلفية غائم"},c.setBackgroundHardcourt=function(){return"تعيين خلفية الملاعب الصلبة"},c.setBackgroundNight=function(){return"تعيين خلفية الليل"},c.setBackgroundUnderwater=function(){return"تعيين خلفية تحت الماء"},c.setBackgroundCity=function(){return"قم بتعيين خلفية المدينة"},c.setBackgroundDesert=function(){return"قم بتعيين خلفية صحراوية"},c.setBackgroundRainbow=function(){return"قم بتعيين خلفية قوس القزح"},c.setBackgroundSoccer=function(){return"وضع خلفية لكرة القدم"},c.setBackgroundSpace=function(){return"وضع خلفية للفضاء"},c.setBackgroundTennis=function(){return"وضع خلفية للتنس"},c.setBackgroundWinter=function(){return"وضع خلفية الشتاء"},c.setBackgroundTooltip=function(){return"تحديد صورة الخلفية"},c.setScoreText=function(){return"تعيين نقاط"},c.setScoreTextTooltip=function(){return"تعيين النص ليتم عرضها في منطقة نقاط."},c.setSpriteEmotionAngry=function(){return"لمزاج غاضب"},c.setSpriteEmotionHappy=function(){return"لمزاج سعيد"},c.setSpriteEmotionNormal=function(){return"لمزاج معتدل"},c.setSpriteEmotionRandom=function(){return"لمزاج عشوائي"},c.setSpriteEmotionSad=function(){return"لمزاج حزين"},c.setSpriteEmotionTooltip=function(){return"يحدد مزاج الممثل"},c.setSpriteAlien=function(){return"إلى صورة مخلوق فضائي"},c.setSpriteBat=function(){return"صورة الوطواط"},c.setSpriteBird=function(){return"صورة العصفور"},c.setSpriteCat=function(){return"إلى صورة القط"},c.setSpriteCaveBoy=function(){return"لصورة فتى الكهف"},c.setSpriteCaveGirl=function(){return"لصورة فتاة الكهف"},c.setSpriteDinosaur=function(){return"إلى صورة ديناصور "},c.setSpriteDog=function(){return"الى صورة الكلب"},c.setSpriteDragon=function(){return"صورة التنين"},c.setSpriteGhost=function(){return"إلى صورة شبح"},c.setSpriteHidden=function(){return"إلى صورة مخفية"},c.setSpriteHideK1=function(){return"إخفاء"},c.setSpriteKnight=function(){return"إلى صورة فارس"},c.setSpriteMonster=function(){return"إلى صورة وحش"},c.setSpriteNinja=function(){return"إلى صورة نينجا مقنع"},c.setSpriteOctopus=function(){return"إلى صورة الأخطبوط"},c.setSpritePenguin=function(){return"إلى صورة البطريق"},c.setSpritePirate=function(){return"إلى صورة قرصان"},c.setSpritePrincess=function(){return"إلى صورة أميرة"},c.setSpriteRandom=function(){return"إلى صورة عشوائية"},c.setSpriteRobot=function(){return"إلى صورة إنسان آلي"},c.setSpriteShowK1=function(){return"إظهار"},c.setSpriteSpacebot=function(){return"إلى صورة إنسان آلي فضائي"},c.setSpriteSoccerGirl=function(){return"لصورة فتاة كرة القدم"},c.setSpriteSoccerBoy=function(){return"لصورة فتى كرة القدم"},c.setSpriteSquirrel=function(){return"صورة السنجاب"},c.setSpriteTennisGirl=function(){return"لصورة فتاة التنس"},c.setSpriteTennisBoy=function(){return"لصورة فتى التنس"},c.setSpriteUnicorn=function(){return"إلى صورة أحادي القرن"},c.setSpriteWitch=function(){return"إلى صورة ساحرة"},c.setSpriteWizard=function(){return"صورة الساحر"},c.setSpritePositionTooltip=function(){return"على الفور تحرك فاعل للموقع المحدد."},c.setSpriteK1Tooltip=function(){return"إظهار أو إخفاء الفاعل المحدد."},c.setSpriteTooltip=function(){return"تعيين صورة الفاعل"},c.setSpriteSizeRandom=function(){return"إلى حجم عشوائي"},c.setSpriteSizeVerySmall=function(){return"إلى حجم صغير جداً"},c.setSpriteSizeSmall=function(){return"إلى حجم صغير"},c.setSpriteSizeNormal=function(){return"إلى حجم عادي"},c.setSpriteSizeLarge=function(){return"إلى حجم كبير"},c.setSpriteSizeVeryLarge=function(){return"إلى حجم كبير جداً"},c.setSpriteSizeTooltip=function(){return"يحدد حجم الممثل"},c.setSpriteSpeedRandom=function(){return"إلى سرعة عشوائية"},c.setSpriteSpeedVerySlow=function(){return"بسرعة بطيئة جداً"},c.setSpriteSpeedSlow=function(){return"بسرعة بطيئة"},c.setSpriteSpeedNormal=function(){return"إلى سرعة العادية"},c.setSpriteSpeedFast=function(){return"إلى سرعة"},c.setSpriteSpeedVeryFast=function(){return"بسرعة سريعة جداً"},c.setSpriteSpeedTooltip=function(){return"تعيين سرعة فاعل"},c.setSpriteZombie=function(){return"إلى صورة زومبي"},c.shareStudioTwitter=function(){return"تحقق من القصة الذي أدليت به. لقد كتبتها بنفسي ب@codeorg"},c.shareGame=function(){return"شارك بقصك:"},c.showTitleScreen=function(){return"إظهار شاشة العنوان"},c.showTitleScreenTitle=function(){return"العنوان"},c.showTitleScreenText=function(){return"نص"},c.showTSDefTitle=function(){return"ضع العنوان هنا"},c.showTSDefText=function(){return"اكتب نصاً هنا"},c.showTitleScreenTooltip=function(){return"إظهار شاشة عنوان مع عنوان المرتبطة بها، والنص."},c.setSprite=function(){return"تعيين"},c.setSpriteN=function(a){return"تحديد موقع الصورة "+v(a,"spriteIndex")},c.soundCrunch=function(){return"سحق"},c.soundGoal1=function(){return"الهدف رقم1"},c.soundGoal2=function(){return"الهدف رقم 2"},c.soundHit=function(){return"إضرب"},c.soundLosePoint=function(){return"خسارة نقطة واحدة"},c.soundLosePoint2=function(){return"نقطة الخسارة 2"},c.soundRetro=function(){return"الرجعية"},c.soundRubber=function(){return"المطاط"},c.soundSlap=function(){return"الصفعة"},c.soundWinPoint=function(){return"الفوز بنقطة"},c.soundWinPoint2=function(){return"نقطة الفوز 2"},c.soundWood=function(){return"الخشب"},c.speed=function(){return"السرعة"},c.stopSprite=function(){return"وقف"},c.stopSpriteN=function(a){return"إيقاف الصورة "+v(a,"spriteIndex")},c.stopTooltip=function(){return"توقف حركة عنصر فاعل."},c.throwSprite=function(){return"رمي"},c.throwSpriteN=function(a){return"الممثل "+v(a,"spriteIndex")+" رمى"},c.throwTooltip=function(){return"يلقي قذيفة من الفاعل المحدد."},c.vanish=function(){return"يختفي"},c.vanishActorN=function(a){return"يختفي الممثل "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"يختفي الممثل ."},c.waitFor=function(){return"انتظر لمدة"},c.waitSeconds=function(){return"ثوانٍ"},c.waitForClick=function(){return"انتظر للنقر"},c.waitForRandom=function(){return"انتظر عشوائي"},c.waitForHalfSecond=function(){return"الانتظار لمدة نصف ثانية"},c.waitFor1Second=function(){return"انتظر لمدة ثانية"},c.waitFor2Seconds=function(){return"انتظر لمدة ثانيتين"},c.waitFor5Seconds=function(){return"انتظر لمدة 5 ثواني"},c.waitFor10Seconds=function(){return"انتظر لمدة 10 ثوان"},c.waitParamsTooltip=function(){return"إنتظر لعدد محدد من الثواني او إستعمل الرقم صفر حتى تحدث النقرة."},c.waitTooltip=function(){return"ينتظر لفترة محددة من الوقت، أو حتى يحدث نقرة."},c.whenArrowDown=function(){return"السهم نحو الأسفل"},c.whenArrowLeft=function(){return"السهم نحو اليسار"},c.whenArrowRight=function(){return"السهم نحو اليمين"},c.whenArrowUp=function(){return"سهم لأعلى"},c.whenArrowTooltip=function(){return"قم بتنفيذ الإجراءات ادناه عندما يتم الضغط على المفتاح المحدد."},c.whenDown=function(){return"السهم لأسفل"},c.whenDownTooltip=function(){return"تنفيذ الإجراءات أدناه عند الضغط على مفتاح السهم لأسفل."},c.whenGameStarts=function(){return"عندما تبدأ القصة"},c.whenGameStartsTooltip=function(){return"تنفيذ الإجراءات أدناه عندما تبدأ القصة."},c.whenLeft=function(){return"السهم الايسر"},c.whenLeftTooltip=function(){return"تنفيذ الإجراءات أدناه عند الضغط على مفتاح السهم الأيسر."},c.whenRight=function(){return"السهم الأيمن"},c.whenRightTooltip=function(){return"تنفيذ الإجراءات أدناه عند الضغط على مفتاح السهم الأيمن."},c.whenSpriteClicked=function(){return"عند النقر فوق الفاعل"},c.whenSpriteClickedN=function(a){return"عندما يضغط الممثل "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"تنفيذ الإجراءات أدناه عند النقر فوق عنصر فاعل."},c.whenSpriteCollidedN=function(a){return"عندما الممثل "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"تنفيذ الإجراءات أدناه عندما يلامس فاعل فاعل آخر."},c.whenSpriteCollidedWith=function(){return"لمسات"},c.whenSpriteCollidedWithN=function(a){return"يلمس الممثل "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"ألمس الكرة الملتهبة الزرقاء"},c.whenSpriteCollidedWithPurpleFireball=function(){return"ألمس الكرة الملتهبة الأرجوانية"},c.whenSpriteCollidedWithRedFireball=function(){return"ألمس الكرة الملتهبة الحمراء"},c.whenSpriteCollidedWithYellowHearts=function(){return"ألمس القلوب الصفراء"},c.whenSpriteCollidedWithPurpleHearts=function(){return"ألمس القلوب الأرجوانية"},c.whenSpriteCollidedWithRedHearts=function(){return"ألمس القلوب الحمراء"},c.whenSpriteCollidedWithBottomEdge=function(){return"عند ملامسة الحافة السفلية"},c.whenSpriteCollidedWithLeftEdge=function(){return"يلمس الحافة اليسرى"},c.whenSpriteCollidedWithRightEdge=function(){return"يلمس الحافة اليمنى"},c.whenSpriteCollidedWithTopEdge=function(){return"يلمس الحافة العليا"},c.whenUp=function(){return"عند الضغط على السهم لاعلى"},c.whenUpTooltip=function(){return"تنفيذ الإجراءات أدناه عند الضغط على مفتاح سهم لأعلى."},c.yes=function(){return"نعم"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/az_az/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/az_az/common":40,"../../locale/az_az/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/az_az/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/az_az/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/az_az/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/az_az/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/az_az/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/az_az/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.and=function(){return"və"},c.blocklyMessage=function(){return'"Blockly"'},c.catActions=function(){return"Əmrlər"},c.catColour=function(){return"Rəng"},c.catLogic=function(){return"Məntiq"},c.catLists=function(){return"Siyahılar"},c.catLoops=function(){return"Dövrlər"},c.catMath=function(){return"Riyaziyyat"},c.catProcedures=function(){return"Funksiyalar"},c.catText=function(){return"Mətn"},c.catVariables=function(){return"Dəyişənlər"},c.codeTooltip=function(){return'Generasiya olunmuş "JavaScript" kodunu nəzərdən keçirin.'},c.continue=function(){return"Davam et"},c.dialogCancel=function(){return"İmtina et"},c.dialogOK=function(){return"Oldu"},c.directionNorthLetter=function(){return"Şimal"},c.directionSouthLetter=function(){return"Cənub"},c.directionEastLetter=function(){return"Şərq"},c.directionWestLetter=function(){return"Qərb"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"Təkrar" və ya "Əgər" blokları işləsin deyə içərisində başqa blokların olmağı lazımdır. Əmin olun ki, daxili blokun konteyner blokun içərisinə düz yerləşir.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Təbriklər! Siz son mərhələni başa vurdunuz."},c.finalStageTrophies=function(a){return"Təbriklər! Siz sonuncu mərhələni tamamladınız və "+p(a,"numTrophies",0,"en",{one:"bir kubok",other:n(a,"numTrophies")+" kubok"})+" qazandınız."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return'Proqramınızın blokları dünyanın ən geniş qəbul olunmuş proqramlaşdırma dili olan "JavaScript"də ("cavaskript") də yazıla bilər:'},c.hashError=function(){return"Təəssüf ki, '%1' yaddaşa verilmiş heç bir proqramla uyğunlaşmır."},c.help=function(){return"Kömək"},c.hintTitle=function(){return"Məsləhət:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Siz bütün lazım olan bloklardan istifadə edirsiniz amma səhv formada."},c.listVariable=function(){return"siyahı"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Bu tapmacanı həll etmək üçün aşağıdakı bloklardan bir və ya bir neçəsini sınaqdan keçirin."},c.nextLevel=function(a){return"Təbriklər! Tapmaca "+v(a,"puzzleNumber")+" tapıldı."},c.nextLevelTrophies=function(a){return"Təbriklər! Siz "+v(a,"puzzleNumber")+" nömrəli tapmacanı tamamladınız və "+p(a,"numTrophies",0,"en",{one:"bir kubok",other:n(a,"numTrophies")+" kubok"})+" qazandınız."},c.nextStage=function(a){return"Təbriklər! Siz "+v(a,"stageName")+" mərhələsini tamamladınız."},c.nextStageTrophies=function(a){return"Təbriklər! Siz "+v(a,"stageName")+" mərhələsini tamamladınız və "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" qazandınız." },c.numBlocksNeeded=function(a){return"Təbriklər! Siz "+v(a,"puzzleNumber")+" nömrəli tapmacanı tamamladınız. (Amma siz cəmi "+p(a,"numBlocks",0,"en",{one:"1 blokdan",other:n(a,"numBlocks")+" blokdan"})+" istifadə edə bilərdiniz)"},c.numLinesOfCodeWritten=function(a){return"Siz indicə "+p(a,"numLines",0,"en",{one:"bir sətir",other:n(a,"numLines")+" sətir"})+" kod yazdınız!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Tapmaca "+v(a,"puzzle_number")+" (cəmi "+v(a,"stage_total")+" tapmaca var)"},c.repeat=function(){return"təkrar et"},c.resetProgram=function(){return"Yenidən başla"},c.runProgram=function(){return"İcra et"},c.runTooltip=function(){return"İş sahəsindəki blokların təsvir etdiyi proqramı icra et."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Kodu göstər"},c.showGeneratedCode=function(){return"Kodu göstər"},c.subtitle=function(){return"vizual proqramlaşdırma mühiti"},c.textVariable=function(){return"mətn"},c.tooFewBlocksMsg=function(){return"Siz bütün lazım olan blok növlərindən istifadə edirsiniz, amma bu tapmacanı tamamlamaq üçün daha çox blok növlərindən istifadə etməyə çalışın."},c.tooManyBlocksMsg=function(){return"Bu tapmaca blokla həll oluna bilər."},c.tooMuchWork=function(){return"Siz mənə çox iş gördürdünüz! Təkrarlamaları azalda bilərsiniz?"},c.toolboxHeader=function(){return"Bloklar"},c.openWorkspace=function(){return"Bu necə işləyir?"},c.totalNumLinesOfCodeWritten=function(a){return"Ümumi cəm: "+p(a,"numLines",0,"en",{one:"1 sətir",other:n(a,"numLines")+" sətir"})+" kod."},c.tryAgain=function(){return"Bir daha cəhd edin"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Əvvəlki mərhələyə qayıt"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Bu təlimatların aşağısında öz JavaScript kodunuzu yazın."},c.typeFuncs=function(){return"Mövcud funksiyalar:%1"},c.typeHint=function(){return"Nəzərə alın ki, mötəriləzər və nöqtəli vergüllər vacibdir."},c.workspaceHeader=function(){return"Bloklarınızı burada birləşdirin: "},c.infinity=function(){return"Sonsuzluq"},c.rotateText=function(){return"Cihazınızı döndərin."},c.orientationLock=function(){return"Cihaz nizamlamalarında səmt kilidini söndürün."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Vidəo izle"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Kodlama Saati'ni dənə"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Əmrlər"},c.catControl=function(){return"Dövrlər"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Məntiq"},c.catMath=function(){return"Riyaziyyat"},c.catProcedures=function(){return"Funksiyalar"},c.catText=function(){return"Mətn"},c.catVariables=function(){return"Dəyişənlər"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Davam et"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"burada yazın"},c.emotion=function(){return"emotion"},c.finalLevel=function(){return"Təbriklər! Axırıncı tapmacanı da tapdınız."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"təsadüfi"},c.moveDistance25=function(){return"25 piksel"},c.moveDistance50=function(){return"50 piksel"},c.moveDistance100=function(){return"100 piksel"},c.moveDistance200=function(){return"200 piksel"},c.moveDistance400=function(){return"400 piksel"},c.moveDistancePixels=function(){return"piksel"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Təbriklər! Siz bu tapmacanı tamamladınız."},c.no=function(){return"Xeyr"},c.numBlocksNeeded=function(){return"Bu tapmaca %1 blokla həll oluna bilər."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"təsadüfi"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"et"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"mətn"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"təyin et"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Bəli"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/bg_bg/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/bg_bg/common":40,"../../locale/bg_bg/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/bg_bg/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/bg_bg/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/bg_bg/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/bg_bg/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bg_bg/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bg_bg/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.bg=function(a){return 1===a?"one":"other"},c.and=function(){return"и"},c.blocklyMessage=function(){return"Блокли"},c.catActions=function(){return"Действия"},c.catColour=function(){return"Цвят"},c.catLogic=function(){return"Логика"},c.catLists=function(){return"Списъци"},c.catLoops=function(){return"Цикли"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функции"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Променливи"},c.codeTooltip=function(){return"Виж генерирания JavaScript код."},c.continue=function(){return"Продължение"},c.dialogCancel=function(){return"Отмяна"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"С"},c.directionSouthLetter=function(){return"Ю"},c.directionEastLetter=function(){return"И"},c.directionWestLetter=function(){return"З"},c.end=function(){return"край"},c.emptyBlocksErrorMsg=function(){return'Блоковете за повторение и "ако" трябва да съдържат други блокове в себе си, за да работят. Уверете се, че вътрешния блок е захванат правилно към външния блок.'},c.emptyFunctionBlocksErrorMsg=function(){return"Блокът за функция трябва да има други блокове вътре в себе си, за да работи."},c.extraTopBlocks=function(){return"Имате допълнителни блокчета, които не са били използвани в събитийния блок."},c.finalStage=function(){return"Поздравления! Вие завършихте последния етап."},c.finalStageTrophies=function(a){return"Поздравления! Вие завършихте последния етап и спечелихте "+p(a,"numTrophies",0,"bg",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Финал"},c.generatedCodeInfo=function(a){return"Дори най-добрите университети учат блок базирано програмиране(напр., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Но под капака, блоковете представляват кодове, написани на JavaScript, в света най-широко използваният за програмиране език:"},c.hashError=function(){return"За съжаление, '%1' не съответства на нито една запазена програма."},c.help=function(){return"Помощ"},c.hintTitle=function(){return"Съвет:"},c.jump=function(){return"скок"},c.levelIncompleteError=function(){return"Използвате всички необходими блокове, но не по правилния начин."},c.listVariable=function(){return"списък"},c.makeYourOwnFlappy=function(){return"Направете своя собствена Flappy Bird игра"},c.missingBlocksErrorMsg=function(){return"Опитайте един или повече блокове по-долу, за да решите този пъзел."},c.nextLevel=function(a){return"Поздравления! Приключихте пъзел "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Поздравления! Завършихте пъзел "+v(a,"puzzleNumber")+" и спечелихте "+p(a,"numTrophies",0,"bg",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Поздравления! Вие завършихте "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Поздравления! Завършихте етап "+v(a,"stageName")+" и спечелихте "+p(a,"numTrophies",0,"bg",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Поздравления! Приключихте пъзел "+v(a,"puzzleNumber")+". (Въпреки това, можехте да използвате само "+p(a,"numBlocks",0,"bg",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"Вие написахте "+p(a,"numLines",0,"bg",{one:"1line",other:n(a,"numLines")+" lines"})+" код!"},c.play=function(){return"играй"},c.puzzleTitle=function(a){return"Пъзел "+v(a,"puzzle_number")+" от "+v(a,"stage_total")},c.repeat=function(){return"повтори"},c.resetProgram=function(){return"Начално състояние"},c.runProgram=function(){return"Пусни"},c.runTooltip=function(){return"Стартира програмата, определена от блоковете в работното поле."},c.score=function(){return"резултат"},c.showCodeHeader=function(){return"Покажи кода"},c.showGeneratedCode=function(){return"Покажи кода"},c.subtitle=function(){return"визуална среда за програмиране"},c.textVariable=function(){return"текст"},c.tooFewBlocksMsg=function(){return"Вие използвате всички нужни блокове, но в недостатъчно количество, за да завършите този пъзел."},c.tooManyBlocksMsg=function(){return"Този пъзел може да бъде решен с блокове."},c.tooMuchWork=function(){return"Накара ме да се изпотя! Може ли да пробваме, но с по-малко повторения?"},c.toolboxHeader=function(){return"Блокове"},c.openWorkspace=function(){return"Как работи"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"bg",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Опитайте отново"},c.hintRequest=function(){return"Виж съвета"},c.backToPreviousLevel=function(){return"Обратно към предишното ниво"},c.saveToGallery=function(){return"Запазете във вашата галерия"},c.savedToGallery=function(){return"Запазено във вашата галерия!"},c.typeCode=function(){return"Въведете вашия JavaScript код под тези инструкции."},c.typeFuncs=function(){return"Налични функции:%1"},c.typeHint=function(){return"Обърнете внимание, че скобите и знаците точка и запетая са задължителни."},c.workspaceHeader=function(){return"Сглобете вашите блокове тук: "},c.infinity=function(){return"Безкрайност"},c.rotateText=function(){return"Завъртете устройството си."},c.orientationLock=function(){return"Изключете заключването на ориентацията от опциите на устройството."},c.wantToLearn=function(){return"Искате ли да се научите да кодирате?"},c.watchVideo=function(){return"Гледайте видеото"},c.when=function(){return"когато"},c.whenRun=function(){return"при стартиране"},c.tryHOC=function(){return"Опитайте Часа на Кодирането"},c.signup=function(){return"Регистрирайте се във встъпителния курс"},c.hintHeader=function(){return"Ето един съвет:"},c.genericFeedback=function(){return"Вижте какво сте въвели и се опитайте да коригирате вашата програма."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.bg=function(a){return 1===a?"one":"other"},c.actor=function(){return"актьор"},c.catActions=function(){return"Действия"},c.catControl=function(){return"Повторения"},c.catEvents=function(){return"Събития"},c.catLogic=function(){return"Логика"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функции"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Променливи"},c.changeScoreTooltip=function(){return"Добавяне или премахване на точка към резултата."},c.changeScoreTooltipK1=function(){return"Добавяне на точка към резултата."},c.continue=function(){return"Напред"},c.decrementPlayerScore=function(){return"премахване на точка"},c.defaultSayText=function(){return"Въведете тук"},c.emotion=function(){return"настроение"},c.finalLevel=function(){return"Поздравления! Вие решихте последния пъзел."},c.hello=function(){return"Здравейте"},c.helloWorld=function(){return"Здравей, свят!"},c.incrementPlayerScore=function(){return"точка"},c.makeProjectileDisappear=function(){return"изчезва"},c.makeProjectileBounce=function(){return"скача"},c.makeProjectileBlueFireball=function(){return"направи синя огнена топка"},c.makeProjectilePurpleFireball=function(){return"направи лилава огнена топка"},c.makeProjectileRedFireball=function(){return"направи червена огнена топка"},c.makeProjectileYellowHearts=function(){return"направи жълти сърца"},c.makeProjectilePurpleHearts=function(){return"направи лилави сърца"},c.makeProjectileRedHearts=function(){return"направи червени сърца"},c.makeProjectileTooltip=function(){return"Прави снаряд, който се блъска, изчезва или скача."},c.makeYourOwn=function(){return"Създайте своя собствена история"},c.moveDirectionDown=function(){return"надолу"},c.moveDirectionLeft=function(){return"ляво"},c.moveDirectionRight=function(){return"дясно"},c.moveDirectionUp=function(){return"нагоре"},c.moveDirectionRandom=function(){return"случаен"},c.moveDistance25=function(){return"25 пиксела"},c.moveDistance50=function(){return"50 пиксела"},c.moveDistance100=function(){return"100 пиксела"},c.moveDistance200=function(){return"200 пиксела"},c.moveDistance400=function(){return"400 пиксела"},c.moveDistancePixels=function(){return"пиксели"},c.moveDistanceRandom=function(){return"случаен брой пиксела"},c.moveDistanceTooltip=function(){return"Премества актьорът на определена дистанция в определената посока."},c.moveSprite=function(){return"Премести"},c.moveSpriteN=function(a){return"Премести актьор "+v(a,"spriteIndex")},c.moveDown=function(){return"Премести надолу"},c.moveDownTooltip=function(){return"Премести актьор надолу."},c.moveLeft=function(){return"движение наляво"},c.moveLeftTooltip=function(){return"Преместване на актьора вляво."},c.moveRight=function(){return"Преместване надясно"},c.moveRightTooltip=function(){return"Преместване на актьора вдясно."},c.moveUp=function(){return"Премести нагоре"},c.moveUpTooltip=function(){return"Премества актьорът нагоре."},c.moveTooltip=function(){return"Преместване на актьор."},c.nextLevel=function(){return"Поздравления! Вие завършихте този пъзел."},c.no=function(){return"Не"},c.numBlocksNeeded=function(){return"Този пъзел може да бъде решен с %1 блока."},c.ouchExclamation=function(){return"Ох!"},c.playSoundCrunch=function(){return"възпроизвежда звук на болка"},c.playSoundGoal1=function(){return"възпроизвежда звук 1 гол"},c.playSoundGoal2=function(){return"възпроизвежда звук 2 гол"},c.playSoundHit=function(){return"възпроизвежда звук за игра"},c.playSoundLosePoint=function(){return"възпроизвежда звук за загуба на точка"},c.playSoundLosePoint2=function(){return"възпроизвежда звук 2 за загуба на точка"},c.playSoundRetro=function(){return"възпроизвежда ретро звук"},c.playSoundRubber=function(){return"възпроизвежда звук на ластик"},c.playSoundSlap=function(){return"възпроизвежда звук от шамар"},c.playSoundTooltip=function(){return"Възпроизвежда избраният звук."},c.playSoundWinPoint=function(){return"възпроизвежда звук на победа точка"},c.playSoundWinPoint2=function(){return"възпроизвежда звук 2 на победа точка"},c.playSoundWood=function(){return"възпроизвежда звук от дърво"},c.positionOutTopLeft=function(){return"на позиция горе вляво"},c.positionOutTopRight=function(){return"към позиция горе вдясно"},c.positionTopOutLeft=function(){return"горе извън лявата позиция"},c.positionTopLeft=function(){return"позиция горе вляво"},c.positionTopCenter=function(){return"позиция в центъра"},c.positionTopRight=function(){return"към позиция горе вдясно"},c.positionTopOutRight=function(){return"горе извън дясната позиция"},c.positionMiddleLeft=function(){return"към положение ляв център"},c.positionMiddleCenter=function(){return"в позиция център"},c.positionMiddleRight=function(){return"в позиция десен център"},c.positionBottomOutLeft=function(){return"надолу извън лявата позиция"},c.positionBottomLeft=function(){return"в позиция долен ляв"},c.positionBottomCenter=function(){return"в позиция долен център"},c.positionBottomRight=function(){return"в позиция долен десен ъгъл"},c.positionBottomOutRight=function(){return"долу извън дясната позиция"},c.positionOutBottomLeft=function(){return"под долната лява позиция"},c.positionOutBottomRight=function(){return"под долната дясна позиция"},c.positionRandom=function(){return"на случайна позиция"},c.projectileBlueFireball=function(){return"синя огнена топка"},c.projectilePurpleFireball=function(){return"лилава огнена топка"},c.projectileRedFireball=function(){return"червена огнена топка"},c.projectileYellowHearts=function(){return"жълти сърца"},c.projectilePurpleHearts=function(){return"лилави сърца"},c.projectileRedHearts=function(){return"червени сърца"},c.projectileRandom=function(){return"случаен"},c.reinfFeedbackMsg=function(){return'Може да натиснете бутона "Опитай отново", за да се върнете към играта си.'},c.repeatForever=function(){return"Повтаря завинаги"},c.repeatDo=function(){return"прави"},c.repeatForeverTooltip=function(){return"Изпълнява действията в този блок, докато тече историята."},c.saySprite=function(){return"казва"},c.saySpriteN=function(a){return"актьор "+v(a,"spriteIndex")+" казва"},c.saySpriteTooltip=function(){return"Запълни балончето за реч със съответния текст на определен актьор."},c.scoreText=function(a){return"Резултат: "+v(a,"playerScore")},c.setBackground=function(){return"задава фон"},c.setBackgroundRandom=function(){return"задайте произволен фон"},c.setBackgroundBlack=function(){return"задава черен фон"},c.setBackgroundCave=function(){return"задава фон пещера"},c.setBackgroundCloudy=function(){return"задава облачен фон"},c.setBackgroundHardcourt=function(){return"задава фон с твърдо покритие"},c.setBackgroundNight=function(){return"задава фон нощ"},c.setBackgroundUnderwater=function(){return"задава подводен фон"},c.setBackgroundCity=function(){return"Задаване на фон град"},c.setBackgroundDesert=function(){return"Задаване на фон пустиня"},c.setBackgroundRainbow=function(){return"Задаване на фон дъга"},c.setBackgroundSoccer=function(){return"Задаване на фон стадион"},c.setBackgroundSpace=function(){return"Задаване на фон космос"},c.setBackgroundTennis=function(){return"задаване на фон тенискорт"},c.setBackgroundWinter=function(){return"задаване на фон зима"},c.setBackgroundTooltip=function(){return"Задаване на фоновото изображение"},c.setScoreText=function(){return"поставя резултат"},c.setScoreTextTooltip=function(){return"Задава текстът да се показва в областта на резултата."},c.setSpriteEmotionAngry=function(){return"ядосано настроение"},c.setSpriteEmotionHappy=function(){return"с весело настроение"},c.setSpriteEmotionNormal=function(){return"за нормалното настроение"},c.setSpriteEmotionRandom=function(){return"за случайно настроение"},c.setSpriteEmotionSad=function(){return"за тъжно настроение"},c.setSpriteEmotionTooltip=function(){return"Задава настроението на Актьора"},c.setSpriteAlien=function(){return"изображение на извънземно"},c.setSpriteBat=function(){return"изображение на прилеп"},c.setSpriteBird=function(){return"изображение на птица"},c.setSpriteCat=function(){return"изображение на котка"},c.setSpriteCaveBoy=function(){return"към изображението на пещерно момче"},c.setSpriteCaveGirl=function(){return"към изображението на пещерно момиче"},c.setSpriteDinosaur=function(){return"изображение на динозавър"},c.setSpriteDog=function(){return"изображение на куче"},c.setSpriteDragon=function(){return"изображение на дракон"},c.setSpriteGhost=function(){return"изображение на дух"},c.setSpriteHidden=function(){return"към скрито изображение"},c.setSpriteHideK1=function(){return"скрива"},c.setSpriteKnight=function(){return"изоражение на кон"},c.setSpriteMonster=function(){return"изображение на чудовище"},c.setSpriteNinja=function(){return"изоражение на маскиран нинджа"},c.setSpriteOctopus=function(){return"изоражение на октопод"},c.setSpritePenguin=function(){return"изоражение на пингвин"},c.setSpritePirate=function(){return"изоражение на пират"},c.setSpritePrincess=function(){return"изоражение на принцеса"},c.setSpriteRandom=function(){return"случайно изображение"},c.setSpriteRobot=function(){return"изоражение на робот"},c.setSpriteShowK1=function(){return"показва"},c.setSpriteSpacebot=function(){return"изображение на космически робот"},c.setSpriteSoccerGirl=function(){return"към изображението на момиче футболист"},c.setSpriteSoccerBoy=function(){return"към изображението на момче футболист"},c.setSpriteSquirrel=function(){return"изображение на катерица"},c.setSpriteTennisGirl=function(){return"към изображението на момиче тенесист"},c.setSpriteTennisBoy=function(){return"към изображението на момче тенесист"},c.setSpriteUnicorn=function(){return"изображение на еднорог"},c.setSpriteWitch=function(){return"изображение на вещица"},c.setSpriteWizard=function(){return"изображение на магьосник"},c.setSpritePositionTooltip=function(){return"Веднага предвижва актьор към указаното местоположение."},c.setSpriteK1Tooltip=function(){return"Показва или скрива определен актьор."},c.setSpriteTooltip=function(){return"Задава изображение на актьора"},c.setSpriteSizeRandom=function(){return"с произволен размер"},c.setSpriteSizeVerySmall=function(){return"с много малък размер"},c.setSpriteSizeSmall=function(){return"с малък размер"},c.setSpriteSizeNormal=function(){return"с нормален размер"},c.setSpriteSizeLarge=function(){return"с голям размер"},c.setSpriteSizeVeryLarge=function(){return"с много голям размер"},c.setSpriteSizeTooltip=function(){return"Задава размера на актьор"},c.setSpriteSpeedRandom=function(){return"на случайна скорост"},c.setSpriteSpeedVerySlow=function(){return"на много бавна скорост"},c.setSpriteSpeedSlow=function(){return"на бавна скорост"},c.setSpriteSpeedNormal=function(){return"за нормална скорост"},c.setSpriteSpeedFast=function(){return"на бърза скорост"},c.setSpriteSpeedVeryFast=function(){return"на много бърза скорост"},c.setSpriteSpeedTooltip=function(){return"Задава скоростта на актьор"},c.setSpriteZombie=function(){return"изображение на зомби"},c.shareStudioTwitter=function(){return"Вижте историята, която направих. Аз сам я написал с @codeorg"},c.shareGame=function(){return"Споделете вашата история:"},c.showTitleScreen=function(){return"показва заглавния екран"},c.showTitleScreenTitle=function(){return"Заглавие"},c.showTitleScreenText=function(){return"текст"},c.showTSDefTitle=function(){return"въведи заглавието тук"},c.showTSDefText=function(){return"Въведи текст тук"},c.showTitleScreenTooltip=function(){return"Показва заглавието на екрана."},c.setSprite=function(){return"задава"},c.setSpriteN=function(a){return"задава актьор "+v(a,"spriteIndex")},c.soundCrunch=function(){return"криза"},c.soundGoal1=function(){return"гол 1"},c.soundGoal2=function(){return"гол 2"},c.soundHit=function(){return"удар"},c.soundLosePoint=function(){return"загуби точка"},c.soundLosePoint2=function(){return"загуби точка 2"},c.soundRetro=function(){return"ретро"},c.soundRubber=function(){return"каучук"},c.soundSlap=function(){return"шамар"},c.soundWinPoint=function(){return"спечели точка"},c.soundWinPoint2=function(){return"спечели точка 2"},c.soundWood=function(){return"дърво"},c.speed=function(){return"скорост"},c.stopSprite=function(){return"Стоп"},c.stopSpriteN=function(a){return"спира актьор "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Спира движението на актьора."},c.throwSprite=function(){return"хвърля"},c.throwSpriteN=function(a){return"актьор "+v(a,"spriteIndex")+" хвърля"},c.throwTooltip=function(){return"Хвърляне на ракета от определен актьор."},c.vanish=function(){return"изчезване"},c.vanishActorN=function(a){return"изчезва актьорът "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Изчезване на актьор."},c.waitFor=function(){return"изчаква за"},c.waitSeconds=function(){return"секунди"},c.waitForClick=function(){return"изчаква за кликване"},c.waitForRandom=function(){return"изчаква за случайно"},c.waitForHalfSecond=function(){return"изчаква за половин секунда"},c.waitFor1Second=function(){return"изчаква за 1 секунда"},c.waitFor2Seconds=function(){return"изчаква за 2 секунди"},c.waitFor5Seconds=function(){return"изчакава 5 секунди"},c.waitFor10Seconds=function(){return"изчаква 10 секунди"},c.waitParamsTooltip=function(){return"Задава определен брой секунди да се изчака или нула за изчакване след едно кликване."},c.waitTooltip=function(){return"Изчакване за определен период от време или до извършване на щракване."},c.whenArrowDown=function(){return"стрелка надолу"},c.whenArrowLeft=function(){return"стрелка наляво"},c.whenArrowRight=function(){return"стрелка надясно"},c.whenArrowUp=function(){return"стрелка нагоре"},c.whenArrowTooltip=function(){return"Следва действията по-долу когато е натисната определена стрелка."},c.whenDown=function(){return"Когато стрелката надолу"},c.whenDownTooltip=function(){return"Следвайте действията по-долу когато е натисната стрелка надолу."},c.whenGameStarts=function(){return"Когато историята започне"},c.whenGameStartsTooltip=function(){return"Следвайте действията по-долу, когато историята започва."},c.whenLeft=function(){return"когато стрелка наляво "},c.whenLeftTooltip=function(){return"Изпълнява действията по-долу когато е натисната стрелка надолу."},c.whenRight=function(){return"когато стрелка надясно"},c.whenRightTooltip=function(){return"Изпълнява действията по-долу когато е натиснат клавиша стрелка надясно."},c.whenSpriteClicked=function(){return"когато актьор натиска"},c.whenSpriteClickedN=function(a){return"когато актьор натиска на "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Изпълнява действията по-долу когато се кликне върху актьор."},c.whenSpriteCollidedN=function(a){return"Когато актьор "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Изпълнява действията по-долу когато актьор докосва друг актьор."},c.whenSpriteCollidedWith=function(){return"докосване"},c.whenSpriteCollidedWithN=function(a){return"докосва актьор "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"докосва синята огнена топка"},c.whenSpriteCollidedWithPurpleFireball=function(){return"докосва лилавата огнена топка"},c.whenSpriteCollidedWithRedFireball=function(){return"докосва червената огнена топка"},c.whenSpriteCollidedWithYellowHearts=function(){return"докосва жълтите сърца"},c.whenSpriteCollidedWithPurpleHearts=function(){return"докосва лилавите сърца"},c.whenSpriteCollidedWithRedHearts=function(){return"докосва червените сърца"},c.whenSpriteCollidedWithBottomEdge=function(){return"докосва долния ръб"},c.whenSpriteCollidedWithLeftEdge=function(){return"докосва ляв ръб"},c.whenSpriteCollidedWithRightEdge=function(){return"докосва десния ръб"},c.whenSpriteCollidedWithTopEdge=function(){return"докосва горния ръб"},c.whenUp=function(){return"Когато клавишът стрелка нагоре"},c.whenUpTooltip=function(){return"Изпълнява действията по-долу когато е натисната стрелка нагоре."},c.yes=function(){return"Да"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a); var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/bn_bd/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/bn_bd/common":40,"../../locale/bn_bd/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/bn_bd/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/bn_bd/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/bn_bd/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/bn_bd/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/bn_bd/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/bn_bd/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.bn=function(a){return 1===a?"one":"other"},c.and=function(){return"এবং"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"ক্রিয়া"},c.catColour=function(){return"রং"},c.catLogic=function(){return"যুক্তি"},c.catLists=function(){return"তালিকা"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"গণিত"},c.catProcedures=function(){return"ফাংশনগুলি"},c.catText=function(){return"পাঠ"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"See generated JavaScript code."},c.continue=function(){return"চালিয়ে যান"},c.dialogCancel=function(){return"বাতিল করুন"},c.dialogOK=function(){return"ঠিক আছে"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Congratulations! You have completed the final stage."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"bn",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"সাহায্য"},c.hintTitle=function(){return"সংকেত:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"তালিকা"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"bn",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"bn",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"bn",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"bn",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"পুনরাই"},c.resetProgram=function(){return"পুনরায় সেট করুন"},c.runProgram=function(){return"প্রোগ্রাম চালান"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"কোড প্রদর্শন করুন"},c.showGeneratedCode=function(){return"কোড প্রদর্শন করুন"},c.subtitle=function(){return"ভিজ্যুয়াল প্রোগ্রামিং পরিবেশ"},c.textVariable=function(){return"পাঠ"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blocks"},c.openWorkspace=function(){return"এটি কিভাবে কাজ করে"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"bn",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"আবার চেষ্টা করুন"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"অসীম"},c.rotateText=function(){return"আপনার ডিভাইস ঘুরান।"},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.bn=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"ক্রিয়া"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"যুক্তি"},c.catMath=function(){return"গণিত"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"পাঠ"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"চালিয়ে যান"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"emotion"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"এলোমেলো"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"পিক্সেলগুলো"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"অভিনন্দন! আপনি এই ধাঁধা সম্পন্ন করেছেন।"},c.no=function(){return"না"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"এলোমেলো"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"করা"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"পাঠ"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"স্থির"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return'"হ্যাঁ"'}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ca_es/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ca_es/common":40,"../../locale/ca_es/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ca_es/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ca_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ca_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ca_es/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ca_es/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ca_es/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ca=function(a){return 1===a?"one":"other"},c.and=function(){return"i"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Accions"},c.catColour=function(){return"Color"},c.catLogic=function(){return"Lògic"},c.catLists=function(){return"Llistes"},c.catLoops=function(){return"Bucles"},c.catMath=function(){return"Matemàtiques"},c.catProcedures=function(){return"Funcions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"Vegeu el codi JavaScript generat."},c.continue=function(){return"Continuar"},c.dialogCancel=function(){return"Cancel·lar"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Els blocs "Repetir" o el "Si" necessiten tenir altres blocs dins per a treballar. Assegureu-vos que el bloc interior encaixa bé dins del bloc que conté.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Enhorabona! Has completat l'etapa final."},c.finalStageTrophies=function(a){return"Enhorabona! Has completat l'etapa final i guanyat "+p(a,"numTrophies",0,"ca",{un:"trofeu",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"Els blocs del teu programa poden ser també representats en Javascript, el llenguatge de programació més extés al món:"},c.hashError=function(){return"Ho sentim, '%1' no correspon amb ningun programa guardat."},c.help=function(){return"Ajuda"},c.hintTitle=function(){return"Consell:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Estàs utilitzant tots els tipus de blocs necessaris, però no de la manera correcta."},c.listVariable=function(){return"Llista"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Prova un o més dels blocs de sota per a resoldre aquest puzzle."},c.nextLevel=function(a){return"Enhorabona! Has acabat el Puzzle! "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Felicitats! Has acabat el Puzzle "+v(a,"puzzleNumber")+" i has guanyat "+p(a,"numTrophies",0,"ca",{one:"un trofeu",other:n(a,"numTrophies")+" trofeus"})+"."},c.nextStage=function(a){return"Enhorabona! Has acabat l'etapa "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Enhorabona! Has acabat l'etapa "+v(a,"stageNumber")+" i has guanyat "+p(a,"numTrophies",0,"ca",{one:"trofeu",other:n(a,"numTrophies")+" trofeus"})+"." },c.numBlocksNeeded=function(a){return"Enhorabona! Has acabat el Puzzle "+v(a,"puzzleNumber")+". (Tot i que podries haver utilitzat un "+p(a,"numBlocks",0,"ca",{one:"1 bloc",other:n(a,"numBlocks")+" blocs"})+".)"},c.numLinesOfCodeWritten=function(a){return"Has escrit "+p(a,"numLines",0,"ca",{one:"1 línia",other:n(a,"numLines")+" línies"})+" de codi!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" de "+v(a,"stage_total")},c.repeat=function(){return"repeteix"},c.resetProgram=function(){return"Reiniciar"},c.runProgram=function(){return"Executar Programa"},c.runTooltip=function(){return"Executa el programa definit per els blocs en l'àrea de treball."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Mostra el Codi"},c.showGeneratedCode=function(){return"Mostra el Codi"},c.subtitle=function(){return"un entorn de programació visual"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Estàs utilitzant tots els tipus de blocs necessaris, però prova d'utilitzar més d'aquest altre tipus per a completar el puzzle."},c.tooManyBlocksMsg=function(){return"Aquest puzzle pot ser resolt amb blocs."},c.tooMuchWork=function(){return"Em fas fer molta feina! Podries intentar repetir menys vegades?"},c.toolboxHeader=function(){return"Blocs"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"Total de tots els temps: "+p(a,"numLines",0,"ca",{one:"1 línia",other:n(a,"numLines")+" línies"})+" de codi."},c.tryAgain=function(){return"Torna a intentar-ho"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Torna al nivell anterior"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Escriu el teu codi JavaScript sota aquestes instruccions."},c.typeFuncs=function(){return"Funcions disponibles:%1"},c.typeHint=function(){return"Tingueu en compte que els parèntesis i els punts i coma són obligatoris."},c.workspaceHeader=function(){return"Monta els teus blocs aquí: "},c.infinity=function(){return"Infinit"},c.rotateText=function(){return"Gira el teu dispositiu."},c.orientationLock=function(){return"Desactiva el bloqueig d'orientació en els ajustos del teu dispositiu."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ca=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Accions"},c.catControl=function(){return"Bucles"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Lògic"},c.catMath=function(){return"Matemàtiques"},c.catProcedures=function(){return"Funcions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Continuar"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Felicitats! Has resolt el puzzle final."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Crea la teva pròpia història"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"un element aleatori"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"píxels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Felicitats! Has complert aquest puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"Aquest puzzle pot res resolt amb blocs de %1."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"un element aleatori"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"fer"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"estableix"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Sí"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/cs_cz/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/cs_cz/common":40,"../../locale/cs_cz/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/cs_cz/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/cs_cz/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/cs_cz/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/cs_cz/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cs_cz/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cs_cz/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.cs=function(a){return 1==a?"one":2==a||3==a||4==a?"few":"other"},c.and=function(){return"a"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Akce"},c.catColour=function(){return"Barva"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Seznamy"},c.catLoops=function(){return"Smyčky"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkce"},c.catText=function(){return"Text"},c.catVariables=function(){return"Proměnné"},c.codeTooltip=function(){return"Zobrazit vygenerovaný kód JavaScriptu."},c.continue=function(){return"Pokračovat"},c.dialogCancel=function(){return"Storno"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"S"},c.directionSouthLetter=function(){return"J"},c.directionEastLetter=function(){return"V"},c.directionWestLetter=function(){return"Z"},c.end=function(){return"konec"},c.emptyBlocksErrorMsg=function(){return'Bloky "Opakovat" nebo "Pokud" v sobě musí mít další bloky, aby fungovaly. Ujisti se, že vnitřní bloky jsou v pořádku vložené dovnitř vnějších bloků.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Máš další extra bloky, které nejsou připojené k bloku událostí."},c.finalStage=function(){return"Dobrá práce! Dokončil si poslední fázi."},c.finalStageTrophies=function(a){return"Dobrá práce! Dokončil si poslední fázi a vyhrál "+p(a,"numTrophies",0,"cs",{one:"trofej",other:n(a,"numTrophies")+" trofejí"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Dokonce nejlepší university učí programovat pomocí bloků (např. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ale vnitřek bloků, které jsi sestavil, lze zobrazit také v JavaScriptu, světově nejrozšířenějším programovacím jazyce:"},c.hashError=function(){return"Promiň, ale '%1' neodpovídá žádnému uloženému programu."},c.help=function(){return"Nápověda"},c.hintTitle=function(){return"Tip:"},c.jump=function(){return"skoč"},c.levelIncompleteError=function(){return"Používáš všechny potřebné typy bloků, ale nesprávným způsobem."},c.listVariable=function(){return"seznam"},c.makeYourOwnFlappy=function(){return"Vytvoř Si Vlastní Hru Flappy"},c.missingBlocksErrorMsg=function(){return"Použijte jeden či více bloků k vyřešení těto hádanky."},c.nextLevel=function(a){return"Dobrá práce! Dokončil jsi Hádanku "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Dobrá práce! Dokončil jsi Hádanku "+v(a,"puzzleNumber")+" a vyhrál "+p(a,"numTrophies",0,"cs",{one:"trofej",other:n(a,"numTrophies")+" trofeje"})+"."},c.nextStage=function(a){return"Blahopřejeme! Dokončil jsi "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Blahopřejeme! Dokončil jsi "+v(a,"stageName")+" a vyhrál "+p(a,"numTrophies",0,"cs",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Dobrá práce! Dokončil jsi Hádanku "+v(a,"puzzleNumber")+". (Ale mohl jsi použít pouze "+p(a,"numBlocks",0,"cs",{one:"1 blok",other:n(a,"numBlocks")+" bloků"})+".)"},c.numLinesOfCodeWritten=function(a){return"Už jsi napsal "+p(a,"numLines",0,"cs",{one:"1 řádek",other:n(a,"numLines")+" řádků"})+" kódu!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Hádanka "+v(a,"puzzle_number")+" z "+v(a,"stage_total")},c.repeat=function(){return"opakuj"},c.resetProgram=function(){return"Obnovit"},c.runProgram=function(){return"Spustit"},c.runTooltip=function(){return"Spustí program definovaný bloky na pracovní ploše."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Zobrazit Kód"},c.showGeneratedCode=function(){return"Zobrazit kód"},c.subtitle=function(){return"vizuální programovací prostředí"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Používáš všechny potřebné bloky, ale zkus použít více těchto bloků pro vyřešení této hádanky."},c.tooManyBlocksMsg=function(){return"Tato hádanka může být vyřešena pomocí bloků."},c.tooMuchWork=function(){return"Přinutil jsi mne udělat spoustu práce! Mohl bys zkusit opakovat méně krát?"},c.toolboxHeader=function(){return"Bloky"},c.openWorkspace=function(){return"Jak To Funguje"},c.totalNumLinesOfCodeWritten=function(a){return"Celkově: "+p(a,"numLines",0,"cs",{one:"1 řádek",other:n(a,"numLines")+" řádků"})+" kódu."},c.tryAgain=function(){return"Zkusit znovu"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Zpět na předchozí úroveň"},c.saveToGallery=function(){return"Uložit do tvé galerie"},c.savedToGallery=function(){return"Uložit do tvé galerie!"},c.typeCode=function(){return"Zadej svůj JavaScript kód pod tyto instrukce."},c.typeFuncs=function(){return"Dostupné funkce:%1"},c.typeHint=function(){return"Všimni si, že závorky a středníky jsou vyžadovány."},c.workspaceHeader=function(){return"Sestav si zde své bloky: "},c.infinity=function(){return"Nekonečno"},c.rotateText=function(){return"Otoč své zařízení."},c.orientationLock=function(){return"Vypni uzamčení rotace v nastavení zařízení."},c.wantToLearn=function(){return"Chceš se naučit programovat?"},c.watchVideo=function(){return"Shlédnout Video"},c.when=function(){return"když"},c.whenRun=function(){return"po spuštění"},c.tryHOC=function(){return"Vyzkoušej Hodinu Programování"},c.signup=function(){return"Zaregistruj se do úvodního kurzu"},c.hintHeader=function(){return"Zde je rada:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.cs=function(a){return 1==a?"one":2==a||3==a||4==a?"few":"other"},c.actor=function(){return"herec"},c.catActions=function(){return"akce"},c.catControl=function(){return"smyčky"},c.catEvents=function(){return"Události"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkce"},c.catText=function(){return"Text"},c.catVariables=function(){return"Proměnné"},c.changeScoreTooltip=function(){return"Přidat nebo odebrat bod ze skóre."},c.changeScoreTooltipK1=function(){return"Přidat bod."},c.continue=function(){return"Pokračovat"},c.decrementPlayerScore=function(){return"Odebrat bod"},c.defaultSayText=function(){return"Piš zde"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Gratulujeme! Vyřešil jsi poslední puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"Bod"},c.makeProjectileDisappear=function(){return"Zmizet"},c.makeProjectileBounce=function(){return"Odrazit"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Nechat projektil zkolidovat a zmizet nebo odrazit."},c.makeYourOwn=function(){return"Vytvoř vlastní příběh"},c.moveDirectionDown=function(){return"dolů"},c.moveDirectionLeft=function(){return"vlevo"},c.moveDirectionRight=function(){return"vpravo"},c.moveDirectionUp=function(){return"nahoru"},c.moveDirectionRandom=function(){return"náhodné"},c.moveDistance25=function(){return"25 pixelů"},c.moveDistance50=function(){return"50 pixelů"},c.moveDistance100=function(){return"100 pixelů"},c.moveDistance200=function(){return"200 pixelů"},c.moveDistance400=function(){return"400 pixelů"},c.moveDistancePixels=function(){return"pixely"},c.moveDistanceRandom=function(){return"náhodné pixely"},c.moveDistanceTooltip=function(){return"Přemístit herce určenou vzdálenost ve specifickém směru."},c.moveSprite=function(){return"pohyb"},c.moveSpriteN=function(a){return"pohnout hercem "+v(a,"spriteIndex")},c.moveDown=function(){return"pohyb dolů"},c.moveDownTooltip=function(){return"pohnout hercem dolů."},c.moveLeft=function(){return"pohnout vlevo"},c.moveLeftTooltip=function(){return"pohnout hercem vlevo."},c.moveRight=function(){return"pohnout vpravo"},c.moveRightTooltip=function(){return"pohnout hercem vpravo."},c.moveUp=function(){return"pohnout nahoru"},c.moveUpTooltip=function(){return"pohnout hercem nahoru."},c.moveTooltip=function(){return"pohnout hercem."},c.nextLevel=function(){return"Gratulujeme! Dokončil jsi toto puzzle."},c.no=function(){return"Ne"},c.numBlocksNeeded=function(){return"Tato hádanka může být vyřešena s %1 blocky."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Přehraj vybraný zvuk."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"náhodně"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"dělej"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Body: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"nastavit náhodné pozadí"},c.setBackgroundBlack=function(){return"nastavit černé pozadí"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Nastavit obrázek pozadí"},c.setScoreText=function(){return"nastavit body"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"nastav"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Ano"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1]; if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/cy_gb/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/cy_gb/common":40,"../../locale/cy_gb/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/cy_gb/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/cy_gb/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/cy_gb/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/cy_gb/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/cy_gb/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/cy_gb/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.cy=function(a){return 0===a?"zero":1==a?"one":2==a?"two":3==a?"few":6==a?"many":"other"},c.and=function(){return"and"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Actions"},c.catColour=function(){return"Colour"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Lists"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"See generated JavaScript code."},c.continue=function(){return"Continue"},c.dialogCancel=function(){return"Cancel"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Congratulations! You have completed the final stage."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"cy",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Help"},c.hintTitle=function(){return"Hint:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"list"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"cy",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"cy",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"cy",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"cy",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"ailadrodd"},c.resetProgram=function(){return"Reset"},c.runProgram=function(){return"Run Program"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Show Code"},c.showGeneratedCode=function(){return"Show code"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blocks"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"cy",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Try again"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.cy=function(a){return 0===a?"zero":1==a?"one":2==a?"two":3==a?"few":6==a?"many":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Actions"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Continue"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"ar hap"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"ar hap"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"gosod"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Yes"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k) }-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/da_dk/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/da_dk/common":40,"../../locale/da_dk/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/da_dk/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/da_dk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/da_dk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/da_dk/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/da_dk/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/da_dk/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.da=function(a){return 1===a?"one":"other"},c.and=function(){return"og"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Handlinger"},c.catColour=function(){return"Farver"},c.catLogic=function(){return"Logik"},c.catLists=function(){return"Lister"},c.catLoops=function(){return"Løkker"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Funktioner"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabler"},c.codeTooltip=function(){return"Se genererede JavaScript-kode."},c.continue=function(){return"Fortsæt"},c.dialogCancel=function(){return"Annuller"},c.dialogOK=function(){return"Ok"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"Ø"},c.directionWestLetter=function(){return"V"},c.end=function(){return"slut"},c.emptyBlocksErrorMsg=function(){return'"Gentag" eller "Hvis" blokkene skal have andre blokke inden i for at virke. Kontroller, at den indre blok passer ordentligt inde i blokken.'},c.emptyFunctionBlocksErrorMsg=function(){return"Funktionen blok skal have andre blokke inde i det for at virke."},c.extraTopBlocks=function(){return"Du har ekstra blokke, der ikke er knyttet til en hændelsesblok."},c.finalStage=function(){return"Tillykke! Du har fuldført det sidste trin."},c.finalStageTrophies=function(a){return"Tillykke! Du har afsluttet det sidste trin og vundet "+p(a,"numTrophies",0,"da",{one:"et trofæ",other:n(a,"numTrophies")+" trofæer"})+"."},c.finish=function(){return"Færdig"},c.generatedCodeInfo=function(a){return"Selv top-universiteter underviser i blok-baseret programmering (f.eks. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Men under kølerhjelmen, kan de blokke du har samlet også vises i JavaScript, verdens mest udbredte programmeringssprog:"},c.hashError=function(){return"Beklager, '%1' svarer ikke til noget gemt program."},c.help=function(){return"Hjælp"},c.hintTitle=function(){return"Tip:"},c.jump=function(){return"hop"},c.levelIncompleteError=function(){return"Du bruger alle de nødvendige typer af blokke, men ikke på den rigtige måde."},c.listVariable=function(){return"liste"},c.makeYourOwnFlappy=function(){return"Lav dit eget Flappy spil"},c.missingBlocksErrorMsg=function(){return"Prøv en eller flere af blokkene nedenfor til at løse dette puslespil."},c.nextLevel=function(a){return"Tillykke! Du fuldførte puslespillet "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Tillykke! Du fuldførte puslespillet "+v(a,"puzzleNumber")+" og vandt "+p(a,"numTrophies",0,"da",{one:"et trofæ",other:n(a,"numTrophies")+" trofæer"})+"."},c.nextStage=function(a){return"Tillykke! Du gennemførte "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Tillykke! Du gennemførte "+v(a,"stageName")+" og vandt "+p(a,"numTrophies",0,"da",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Tillykke! Du fuldførte puslespillet "+v(a,"puzzleNumber")+". (Men du kunne have brugt kun "+p(a,"numBlocks",0,"da",{one:"1 blok",other:n(a,"numBlocks")+" blokke"})+".)"},c.numLinesOfCodeWritten=function(a){return"Du har lige skrevet "+p(a,"numLines",0,"da",{one:"1 linje",other:n(a,"numLines")+" linjer"})+" kode!"},c.play=function(){return"afspil"},c.puzzleTitle=function(a){return"Puslespil "+v(a,"puzzle_number")+" af "+v(a,"stage_total")},c.repeat=function(){return"gentag"},c.resetProgram=function(){return"Nulstil"},c.runProgram=function(){return"Kør"},c.runTooltip=function(){return"Kør programmet defineret af blokkene i arbejdsområdet."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Vis kode"},c.showGeneratedCode=function(){return"Vis kode"},c.subtitle=function(){return"et visuelt programmerings miljø"},c.textVariable=function(){return"tekst"},c.tooFewBlocksMsg=function(){return"Du bruger alle de nødvendige typer af blokke, men prøv at bruge flere af disse typer blokke til at fuldføre dette puslespil."},c.tooManyBlocksMsg=function(){return"Dette puslespil kan løses med blokke."},c.tooMuchWork=function(){return"Du fik mig til at gøre en masse arbejde! Kunne du prøve at gentage færre gange?"},c.toolboxHeader=function(){return"Blokke"},c.openWorkspace=function(){return"Sådan fungerer det"},c.totalNumLinesOfCodeWritten=function(a){return"I alt: "+p(a,"numLines",0,"da",{one:"1 linje",other:n(a,"numLines")+" linjer"})+" af kode."},c.tryAgain=function(){return"Prøv igen"},c.hintRequest=function(){return"Se hjælp"},c.backToPreviousLevel=function(){return"Tilbage til forrige niveau"},c.saveToGallery=function(){return"Gem til dit galleri"},c.savedToGallery=function(){return"Gem til dit galleri!"},c.typeCode=function(){return"Skriv din JavaScript kode under disse instruktioner."},c.typeFuncs=function(){return"Tilgængelige funktioner: %1"},c.typeHint=function(){return"Bemærk, at parenteser og semikoloner er nødvendige."},c.workspaceHeader=function(){return"Saml dine blokke her: "},c.infinity=function(){return"Uendelig"},c.rotateText=function(){return"Drej din enhed."},c.orientationLock=function(){return"Slå orienterings-lås fra i Enhedsindstillinger."},c.wantToLearn=function(){return"Vil du lære at kode?"},c.watchVideo=function(){return"Se denne video"},c.when=function(){return"når"},c.whenRun=function(){return"Når programmet kører"},c.tryHOC=function(){return"Prøv en time af kodeing"},c.signup=function(){return"Tilmeld til Introduktion kursus"},c.hintHeader=function(){return"Her er et tip:"},c.genericFeedback=function(){return"Se hvordan du endte, og prøve at rette dit program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.da=function(a){return 1===a?"one":"other"},c.actor=function(){return"skuespiller"},c.catActions=function(){return"Handlinger"},c.catControl=function(){return"Løkker"},c.catEvents=function(){return"Hændelser"},c.catLogic=function(){return"Logik"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Funktioner"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabler"},c.changeScoreTooltip=function(){return"Tilføj eller fjern et point til scoren."},c.changeScoreTooltipK1=function(){return"Tilføj et point til scoren."},c.continue=function(){return"Fortsæt"},c.decrementPlayerScore=function(){return"fjern point"},c.defaultSayText=function(){return"Skriv her"},c.emotion=function(){return"humør"},c.finalLevel=function(){return"Tillykke! Du har løst den sidste opgave."},c.hello=function(){return"hej"},c.helloWorld=function(){return"Hej verden!"},c.incrementPlayerScore=function(){return"spiller point"},c.makeProjectileDisappear=function(){return"forsvind"},c.makeProjectileBounce=function(){return"hop"},c.makeProjectileBlueFireball=function(){return"lav blå ildkugle"},c.makeProjectilePurpleFireball=function(){return"lav lilla ildkugle"},c.makeProjectileRedFireball=function(){return"lav røde ildkugle"},c.makeProjectileYellowHearts=function(){return"lav gule hjerter"},c.makeProjectilePurpleHearts=function(){return"lav lilla hjerter"},c.makeProjectileRedHearts=function(){return"lav røde hjerter"},c.makeProjectileTooltip=function(){return"Lad kuglen, der netop ramte, forsvinde eller hoppe."},c.makeYourOwn=function(){return"Lav din egen historie"},c.moveDirectionDown=function(){return"ned"},c.moveDirectionLeft=function(){return"venstre"},c.moveDirectionRight=function(){return"højre"},c.moveDirectionUp=function(){return"op"},c.moveDirectionRandom=function(){return"tilfældig"},c.moveDistance25=function(){return"25 pixel"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"tilfældige pixels"},c.moveDistanceTooltip=function(){return"Flyt en spiller en bestemt afstand i den angivne retning."},c.moveSprite=function(){return"flyt"},c.moveSpriteN=function(a){return"flyt spiller "+v(a,"spriteIndex")},c.moveDown=function(){return"Flyt ned"},c.moveDownTooltip=function(){return"Flyt en spiller ned."},c.moveLeft=function(){return"Flyt til venstre"},c.moveLeftTooltip=function(){return"Flyt en spiller til venstre."},c.moveRight=function(){return"Flyt til højre"},c.moveRightTooltip=function(){return"Flyt spilleren til højre."},c.moveUp=function(){return"Flyt op"},c.moveUpTooltip=function(){return"Flyt spilleren op."},c.moveTooltip=function(){return"Flyt en spiller."},c.nextLevel=function(){return"Tillykke! Du har fuldført denne opgave."},c.no=function(){return"Nej"},c.numBlocksNeeded=function(){return"Denne opgave kan løses med %1 blokke."},c.ouchExclamation=function(){return"Av!"},c.playSoundCrunch=function(){return"afspil knaselyd"},c.playSoundGoal1=function(){return"afspil mål 1 lyd"},c.playSoundGoal2=function(){return"afspil mål 2 lyd"},c.playSoundHit=function(){return"afspil rammer lyd"},c.playSoundLosePoint=function(){return"afspil tab point lyd"},c.playSoundLosePoint2=function(){return"afspil tab point 2 lyd"},c.playSoundRetro=function(){return"afspil retro lyd"},c.playSoundRubber=function(){return"Afspil gummi lyd"},c.playSoundSlap=function(){return"afspil klaske lyd"},c.playSoundTooltip=function(){return"Afspil den valgte lyd."},c.playSoundWinPoint=function(){return"afspil vind point lyd"},c.playSoundWinPoint2=function(){return"afspil vind point 2 lyd"},c.playSoundWood=function(){return"afspil træ lyd"},c.positionOutTopLeft=function(){return"til øverst til venstre position"},c.positionOutTopRight=function(){return"til øverst højre position"},c.positionTopOutLeft=function(){return"til toppen uden for venstre position"},c.positionTopLeft=function(){return"til øverste venstre position"},c.positionTopCenter=function(){return"til top midterpositionen"},c.positionTopRight=function(){return"til den øverste højre position"},c.positionTopOutRight=function(){return"til toppen uden for højre position"},c.positionMiddleLeft=function(){return"i den midterste venstre position"},c.positionMiddleCenter=function(){return"den midterste center holdning"},c.positionMiddleRight=function(){return"i den midterste højre position"},c.positionBottomOutLeft=function(){return"til bunden udenfor venstre position"},c.positionBottomLeft=function(){return"til den nederste venstre position"},c.positionBottomCenter=function(){return"til bunden center position"},c.positionBottomRight=function(){return"til den nederste højre position"},c.positionBottomOutRight=function(){return"til bunden udenfor højre position"},c.positionOutBottomLeft=function(){return"til nederste venstre position"},c.positionOutBottomRight=function(){return"til nederste højre position"},c.positionRandom=function(){return"til tilfældig position"},c.projectileBlueFireball=function(){return"blå ildkugle"},c.projectilePurpleFireball=function(){return"lilla ildkugle"},c.projectileRedFireball=function(){return"rød ildkugle"},c.projectileYellowHearts=function(){return"gule hjerter"},c.projectilePurpleHearts=function(){return"lilla hjerter"},c.projectileRedHearts=function(){return"røde hjerter"},c.projectileRandom=function(){return"tilfældig"},c.reinfFeedbackMsg=function(){return'Du kan trykke på knappen "Prøv igen", for at gå tilbage til dit spil.'},c.repeatForever=function(){return"Gentag for evigt"},c.repeatDo=function(){return"udfør"},c.repeatForeverTooltip=function(){return"Udføre handlinger i denne blok gentagne gange mens programmet kører."},c.saySprite=function(){return"sig"},c.saySpriteN=function(a){return"spilleren "+v(a,"spriteIndex")+" siger"},c.saySpriteTooltip=function(){return"En taleboble med den tilhørende tekst fra det angivne karakter."},c.scoreText=function(a){return"Point: "+v(a,"playerScore")+": "+v(a,"opponentScore")},c.setBackground=function(){return"sæt baggrund"},c.setBackgroundRandom=function(){return"sæt tilfældig baggrund"},c.setBackgroundBlack=function(){return"sæt sort baggrund"},c.setBackgroundCave=function(){return"sæt hule baggrund"},c.setBackgroundCloudy=function(){return"sæt skyet baggrund"},c.setBackgroundHardcourt=function(){return"sæt tennis baggrund"},c.setBackgroundNight=function(){return"sæt nat baggrund"},c.setBackgroundUnderwater=function(){return"indstille undervands baggrund"},c.setBackgroundCity=function(){return"sæt by baggrund"},c.setBackgroundDesert=function(){return"sæt ørken baggrund"},c.setBackgroundRainbow=function(){return"sæt regnbue baggrund"},c.setBackgroundSoccer=function(){return"sæt fodbold baggrund"},c.setBackgroundSpace=function(){return"sæt rum baggrund"},c.setBackgroundTennis=function(){return"sæt tennis baggrund"},c.setBackgroundWinter=function(){return"sæt vinter baggrund"},c.setBackgroundTooltip=function(){return"Indstiller baggrundsbilledet"},c.setScoreText=function(){return"sæt score"},c.setScoreTextTooltip=function(){return"Angiver teksten, der skal vises i score området."},c.setSpriteEmotionAngry=function(){return"til en vred stemning"},c.setSpriteEmotionHappy=function(){return"til en glad stemning"},c.setSpriteEmotionNormal=function(){return"til en normal stemning"},c.setSpriteEmotionRandom=function(){return"til en tilfældig stemning"},c.setSpriteEmotionSad=function(){return"på en trist stemning"},c.setSpriteEmotionTooltip=function(){return"Sætter spiller stemning"},c.setSpriteAlien=function(){return"til alien billedet"},c.setSpriteBat=function(){return"til flagermus billedet"},c.setSpriteBird=function(){return"at fugle billedet"},c.setSpriteCat=function(){return"at katte billedet"},c.setSpriteCaveBoy=function(){return"til hule-drengs billedet"},c.setSpriteCaveGirl=function(){return"til grotte-pige billedet"},c.setSpriteDinosaur=function(){return"til dinosaur billedet"},c.setSpriteDog=function(){return"at en hund billedet"},c.setSpriteDragon=function(){return"til en dragon billedet"},c.setSpriteGhost=function(){return"til et spøgelse billedet"},c.setSpriteHidden=function(){return"til et skjult billede"},c.setSpriteHideK1=function(){return"Skjul"},c.setSpriteKnight=function(){return"at en ridder billedet"},c.setSpriteMonster=function(){return"til et monster billedet"},c.setSpriteNinja=function(){return"til en maskeret ninja billedet"},c.setSpriteOctopus=function(){return"til en blæksprutte billedet"},c.setSpritePenguin=function(){return"til pingvin billedet"},c.setSpritePirate=function(){return"til pirat billedet"},c.setSpritePrincess=function(){return"til prinsesse billedet"},c.setSpriteRandom=function(){return"til et tilfældigt billede"},c.setSpriteRobot=function(){return"at robot billedet"},c.setSpriteShowK1=function(){return"Vis"},c.setSpriteSpacebot=function(){return"til spacebot billedet"},c.setSpriteSoccerGirl=function(){return"til fodbold pige billedet"},c.setSpriteSoccerBoy=function(){return"til fodbold dreng billedet"},c.setSpriteSquirrel=function(){return"til egern billedet"},c.setSpriteTennisGirl=function(){return"til tennis pige billedet"},c.setSpriteTennisBoy=function(){return"til tennis dreng billedet"},c.setSpriteUnicorn=function(){return"til enhjørning billedet"},c.setSpriteWitch=function(){return"til heks billedet"},c.setSpriteWizard=function(){return"til troldmands billedet"},c.setSpritePositionTooltip=function(){return"Flytter en spiller til den angivne placering."},c.setSpriteK1Tooltip=function(){return"Viser eller skjuler de angivne spiller."},c.setSpriteTooltip=function(){return"Indstiller spiller billedet"},c.setSpriteSizeRandom=function(){return"til en tilfældig størrelse"},c.setSpriteSizeVerySmall=function(){return"til en meget lille størrelse"},c.setSpriteSizeSmall=function(){return"til en lille størrelse"},c.setSpriteSizeNormal=function(){return"til en normal størrelse"},c.setSpriteSizeLarge=function(){return"til en stor størrelse"},c.setSpriteSizeVeryLarge=function(){return"til en meget stor størrelse"},c.setSpriteSizeTooltip=function(){return"sætter størrelsen på en spiller"},c.setSpriteSpeedRandom=function(){return"til en tilfældig hastighed"},c.setSpriteSpeedVerySlow=function(){return"til en meget langsom hastighed"},c.setSpriteSpeedSlow=function(){return"til en langsom hastighed"},c.setSpriteSpeedNormal=function(){return"til en normal hastighed"},c.setSpriteSpeedFast=function(){return"til en hurtig hastighed"},c.setSpriteSpeedVeryFast=function(){return"til en meget hurtig hastighed"},c.setSpriteSpeedTooltip=function(){return"Indstiller hastigheden af spiller"},c.setSpriteZombie=function(){return"til zombie billedet"},c.shareStudioTwitter=function(){return"Tjek historien jeg lavede. Jeg skrev det selv med @codeorg"},c.shareGame=function(){return"Del din historie:"},c.showTitleScreen=function(){return"Vis titelskærm"},c.showTitleScreenTitle=function(){return"titel"},c.showTitleScreenText=function(){return"tekst"},c.showTSDefTitle=function(){return"skriv titel her"},c.showTSDefText=function(){return"Skriv tekst her"},c.showTitleScreenTooltip=function(){return"Vis en titel skærm med tilhørende titel og tekst."},c.setSprite=function(){return"sæt"},c.setSpriteN=function(a){return"sæt spiller "+v(a,"spriteIndex")},c.soundCrunch=function(){return"kravle"},c.soundGoal1=function(){return"mål 1"},c.soundGoal2=function(){return"mål 2"},c.soundHit=function(){return"hjælp"},c.soundLosePoint=function(){return"miste point"},c.soundLosePoint2=function(){return"miste point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"gummi"},c.soundSlap=function(){return"lussing"},c.soundWinPoint=function(){return"vinde point"},c.soundWinPoint2=function(){return"vinde punkt 2"},c.soundWood=function(){return"træ"},c.speed=function(){return"hastighed"},c.stopSprite=function(){return"Stop"},c.stopSpriteN=function(a){return"Stop spiller "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stopper en spiller bevægelse."},c.throwSprite=function(){return"kaste"},c.throwSpriteN=function(a){return"spiller "+v(a,"spriteIndex")+" kast"},c.throwTooltip=function(){return"Kaster et projektil fra den angivne spiller."},c.vanish=function(){return"forsvinde"},c.vanishActorN=function(a){return"spiller forsvinder "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Spilleren forsvinder."},c.waitFor=function(){return"vente på"},c.waitSeconds=function(){return"sekunder"},c.waitForClick=function(){return"vente på Klik"},c.waitForRandom=function(){return"vente på tilfældige"},c.waitForHalfSecond=function(){return"vente på et halvt sekund"},c.waitFor1Second=function(){return"vente på 1 sekund"},c.waitFor2Seconds=function(){return"vent 2 sekunder"},c.waitFor5Seconds=function(){return"vent 5 sekunder"},c.waitFor10Seconds=function(){return"vent 10 sekunder"},c.waitParamsTooltip=function(){return"Venter på et angivet antal sekunder eller brug nul vente indtil et klik opstår."},c.waitTooltip=function(){return"Venter på en angivet tid, eller indtil et klik opstår."},c.whenArrowDown=function(){return"pil ned"},c.whenArrowLeft=function(){return"venstre pil"},c.whenArrowRight=function(){return"højre pil"},c.whenArrowUp=function(){return"pil op"},c.whenArrowTooltip=function(){return"Udføre handlingen nedenfor når den angivne pile-tast holdes nede."},c.whenDown=function(){return"Når pil ned"},c.whenDownTooltip=function(){return"Udfører handlingen herunder når der trykkes pil ned."},c.whenGameStarts=function(){return"Når historien starter"},c.whenGameStartsTooltip=function(){return"Udfører handlingen nedenfor når historien begynder."},c.whenLeft=function(){return"Når venstre pil"},c.whenLeftTooltip=function(){return"Udfører handlingen herunder når der trykkes venstre pil."},c.whenRight=function(){return"Når højre pil"},c.whenRightTooltip=function(){return"Udfører handlingen herunder når der trykkes højre pil."},c.whenSpriteClicked=function(){return"Når der klikkes på spilleren"},c.whenSpriteClickedN=function(a){return"Når der klikkes på spilleren "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Udføre handlingen herunder når en der klikkes på spilleren."},c.whenSpriteCollidedN=function(a){return"når spilleren "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Udføre handlingen nedenfor når spilleren rører en anden spiller."},c.whenSpriteCollidedWith=function(){return"rører"},c.whenSpriteCollidedWithN=function(a){return"rører spilleren "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"rører blå ildkugle"},c.whenSpriteCollidedWithPurpleFireball=function(){return"rører lilla ildkugle"},c.whenSpriteCollidedWithRedFireball=function(){return"rører røde ildkugle"},c.whenSpriteCollidedWithYellowHearts=function(){return"rører gule hjerter"},c.whenSpriteCollidedWithPurpleHearts=function(){return"rører lilla hjerter"},c.whenSpriteCollidedWithRedHearts=function(){return"rører røde hjerter"},c.whenSpriteCollidedWithBottomEdge=function(){return"rører nederste kant"},c.whenSpriteCollidedWithLeftEdge=function(){return"rører venstre kant"},c.whenSpriteCollidedWithRightEdge=function(){return"rører højre kant"},c.whenSpriteCollidedWithTopEdge=function(){return"rører øverste kant"},c.whenUp=function(){return"Når pil op"},c.whenUpTooltip=function(){return"Udfører handlingen herunder når der trykkes pil op."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/de_de/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/de_de/common":40,"../../locale/de_de/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/de_de/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/de_de/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/de_de/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/de_de/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/de_de/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/de_de/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.de=function(a){return 1===a?"one":"other"},c.and=function(){return"und"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Aktionen"},c.catColour=function(){return"Farbe"},c.catLogic=function(){return"Logik"},c.catLists=function(){return"Listen"},c.catLoops=function(){return"Schleifen"},c.catMath=function(){return"Mathematik"},c.catProcedures=function(){return"Funktionen"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variablen"},c.codeTooltip=function(){return"Erzeugten JavaScript-Code ansehen."},c.continue=function(){return"Weiter"},c.dialogCancel=function(){return"Abbrechen"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"O"},c.directionWestLetter=function(){return"W"},c.end=function(){return"Ende"},c.emptyBlocksErrorMsg=function(){return'Die "Wiederholen"- und die "Wenn"-Bausteine benötigten im Inneren andere Bausteine um zu funktionieren. Stelle sicher, dass der innere Baustein in den umschließenden Baustein passt.'},c.emptyFunctionBlocksErrorMsg=function(){return"Der Funktionsblock muss andere Blöcke beinhalten um zu funktionieren."},c.extraTopBlocks=function(){return"Es gibt zusätzliche Bausteine, die keinem Ereignis-Baustein zugeordnet sind."},c.finalStage=function(){return"Glückwunsch! Du hast das letzte Level erfolgreich abgeschlossen."},c.finalStageTrophies=function(a){return"Glückwunsch! Du hast das letzte Level erfolgreich abgeschlossen und "+p(a,"numTrophies",0,"de",{one:"eine Trophäe",other:n(a,"numTrophies")+" Trophäen"})+" gewonnen."},c.finish=function(){return"Abschließen"},c.generatedCodeInfo=function(a){return"Sogar Top-Universitäten unterrichten Baustein-basiertes programmieren (z.B."+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Die Bausteine, welche sie zusammengestellt haben, können auch in JavaScript dargestellt werden, die meistgenutzte Programmiersprache der Welt:"},c.hashError=function(){return"Ups, '%1' stimmt mit keinem gespeicherten Programm überein."},c.help=function(){return"Hilfe"},c.hintTitle=function(){return"Hinweis:"},c.jump=function(){return"springen"},c.levelIncompleteError=function(){return"Du benutzt alle nötigen Bausteine, aber noch nicht auf die richtige Weise."},c.listVariable=function(){return"Liste"},c.makeYourOwnFlappy=function(){return'Erstelle Dein Eigenes "Flappy Bird" Spiel'},c.missingBlocksErrorMsg=function(){return"Versuche einen, oder mehrere Bausteine von unten zu verwenden, um dieses Puzzle zu lösen."},c.nextLevel=function(a){return"Glückwunsch! Du hast Puzzle "+v(a,"puzzleNumber")+" erfolgreich abgeschlossen."},c.nextLevelTrophies=function(a){return"Glückwunsch! Du hast Puzzle "+v(a,"puzzleNumber")+" erfolgreich abgeschlossen und "+p(a,"numTrophies",0,"de",{one:"eine Trophäe",other:n(a,"numTrophies")+" Trophäen"})+" gewonnen." },c.nextStage=function(a){return"Herzlichen Glückwunsch! Du hast "+v(a,"stageName")+" erfolgreich abgeschlossen."},c.nextStageTrophies=function(a){return"Herzlichen Glückwunsch! Du hast Teil "+v(a,"stageName")+" erfolgreich abgeschlossen und "+p(a,"numTrophies",0,"de",{one:"eine Trophäe",other:n(a,"numTrophies")+" Trophäen"})+" gewonnen."},c.numBlocksNeeded=function(a){return"Glückwunsch! Du hast Puzzle "+v(a,"puzzleNumber")+" fertig gestellt. (Du hättest jedoch nur "+p(a,"numBlocks",0,"de",{one:"1 Baustein",other:n(a,"numBlocks")+" Bausteine"})+" gebraucht.)"},c.numLinesOfCodeWritten=function(a){return"Du hast soeben "+p(a,"numLines",0,"de",{one:"eine Zeile",other:n(a,"numLines")+" Zeilen"})+" Code geschrieben!"},c.play=function(){return"spielen"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" von "+v(a,"stage_total")},c.repeat=function(){return"wiederholen"},c.resetProgram=function(){return"Zurücksetzen"},c.runProgram=function(){return"Ausführen"},c.runTooltip=function(){return"Starte das Programm, das durch die Bausteine in deinem Arbeitsbereich festgelegt ist."},c.score=function(){return"Punktestand"},c.showCodeHeader=function(){return"Programm anzeigen"},c.showGeneratedCode=function(){return"Programm anzeigen"},c.subtitle=function(){return"eine visuelle Programmierumgebung"},c.textVariable=function(){return"Text"},c.tooFewBlocksMsg=function(){return"Du verwendest alle nötigen Baustein-Typen. Versuche jedoch mehr von diesen Baustein-Typen zu verwenden, um dieses Puzzle fertigzustellen."},c.tooManyBlocksMsg=function(){return"Dieses Puzzle kann mit Bausteinen gelöst werden."},c.tooMuchWork=function(){return"Du lässt mich ganz schön arbeiten! Könntest du versuchen es seltener zu wiederholen?"},c.toolboxHeader=function(){return"Bausteine"},c.openWorkspace=function(){return"Wie es funktioniert"},c.totalNumLinesOfCodeWritten=function(a){return"Insgesamt: "+p(a,"numLines",0,"de",{one:"Eine Zeile",other:n(a,"numLines")+" Zeilen"})+" Code."},c.tryAgain=function(){return"Versuche es noch einmal"},c.hintRequest=function(){return"Hinweis anzeigen"},c.backToPreviousLevel=function(){return"Zurück zum vorherigen Level"},c.saveToGallery=function(){return"In deiner Galerie abspeichern"},c.savedToGallery=function(){return"In deiner Gallerie gespeichert!"},c.typeCode=function(){return"Schreibe deinen JavaScript-Code unter diese Anweisungen."},c.typeFuncs=function(){return"Verfügbare Funktionen:%1"},c.typeHint=function(){return"Beachte, dass die runden Klammern und Semikola erforderlich sind."},c.workspaceHeader=function(){return"Setze die Bausteine hier zusammen: "},c.infinity=function(){return"Unendlichkeit"},c.rotateText=function(){return"Drehen Sie ihr Gerät."},c.orientationLock=function(){return"Deaktivieren Sie die Dreh-Möglichkeit des Bildschirms in den Geräteeinstellungen."},c.wantToLearn=function(){return"Möchtest du programmieren lernen?"},c.watchVideo=function(){return"Video anschauen"},c.when=function(){return"wenn"},c.whenRun=function(){return"Programmstart"},c.tryHOC=function(){return'Probiere "The Hour of Code" aus'},c.signup=function(){return"Für den Einführungskurs anmelden"},c.hintHeader=function(){return"Hier ist ein Tipp:"},c.genericFeedback=function(){return"Schau dir an, was du gemacht hast und versuche Fehler im Programm zu beheben."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.de=function(a){return 1===a?"one":"other"},c.actor=function(){return"Element"},c.catActions=function(){return"Aktionen"},c.catControl=function(){return"Schleifen"},c.catEvents=function(){return"Ereignisse"},c.catLogic=function(){return"Logik"},c.catMath=function(){return"Mathematik"},c.catProcedures=function(){return"Funktionen"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variablen"},c.changeScoreTooltip=function(){return"Addiere oder subtrahiere einen Punkt von der Punktzahl."},c.changeScoreTooltipK1=function(){return"Addiere einen Punkt zu der Punktzahl."},c.continue=function(){return"Fortfahren"},c.decrementPlayerScore=function(){return"Punkt abziehen"},c.defaultSayText=function(){return"Hier eingeben"},c.emotion=function(){return"Stimmung"},c.finalLevel=function(){return"Glückwunsch! Sie haben das letzte Puzzle gelöst."},c.hello=function(){return"Hallo"},c.helloWorld=function(){return"Hallo Welt!"},c.incrementPlayerScore=function(){return"Punkt erzielen"},c.makeProjectileDisappear=function(){return"verschwinden"},c.makeProjectileBounce=function(){return"abprallen"},c.makeProjectileBlueFireball=function(){return"Mache blauen Feuerball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Lasse das kollidierende Projektil verschwinden oder apprallen."},c.makeYourOwn=function(){return"Mache deine eigene Geschichte"},c.moveDirectionDown=function(){return"runter"},c.moveDirectionLeft=function(){return"links"},c.moveDirectionRight=function(){return"rechts"},c.moveDirectionUp=function(){return"hoch"},c.moveDirectionRandom=function(){return"zufällig"},c.moveDistance25=function(){return"25 Pixel"},c.moveDistance50=function(){return"50 Pixel"},c.moveDistance100=function(){return"100 Pixel"},c.moveDistance200=function(){return"200 Pixel"},c.moveDistance400=function(){return"400 Pixel"},c.moveDistancePixels=function(){return"Pixel"},c.moveDistanceRandom=function(){return"Zufällige Pixel"},c.moveDistanceTooltip=function(){return"Verschiebe einen Darsteller um eine bestimmte Entfernung in eine bestimmte Richtung."},c.moveSprite=function(){return"bewegen"},c.moveSpriteN=function(a){return"Bewege Element "+v(a,"spriteIndex")},c.moveDown=function(){return"nach unten bewegen"},c.moveDownTooltip=function(){return"Bewege ein Element nach unten."},c.moveLeft=function(){return"nach links bewegen"},c.moveLeftTooltip=function(){return"Bewege ein Element nach links."},c.moveRight=function(){return"nach rechts bewegen"},c.moveRightTooltip=function(){return"Bewege ein Element nach rechts."},c.moveUp=function(){return"nach oben bewegen"},c.moveUpTooltip=function(){return"Bewege ein Element nach oben."},c.moveTooltip=function(){return"Bewege ein Element."},c.nextLevel=function(){return"Herzlichen Glückwunsch! Du hast dieses Puzzle abgeschlossen."},c.no=function(){return"Nein"},c.numBlocksNeeded=function(){return"Dieses Puzzle kann mit %1 Bausteinen gelöst werden."},c.ouchExclamation=function(){return"Autsch!"},c.playSoundCrunch=function(){return"Knirschgeräusch abspielen"},c.playSoundGoal1=function(){return"Ton für Tor 1 abspielen"},c.playSoundGoal2=function(){return"Ton für Tor 2 abspielen"},c.playSoundHit=function(){return"Trefferton abspielen"},c.playSoundLosePoint=function(){return"Ton für Punktverlust abspielen"},c.playSoundLosePoint2=function(){return"Alternativen Ton für Punktverlust abspielen"},c.playSoundRetro=function(){return"Retroton abspielen"},c.playSoundRubber=function(){return"Ton für Gummi abspielen"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Den ausgewählten Ton abspielen."},c.playSoundWinPoint=function(){return"Gewinnton abspielen"},c.playSoundWinPoint2=function(){return"Alternativen Gewinnton abspielen"},c.playSoundWood=function(){return"Holzton abspielen"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"an die obere linke Position"},c.positionTopCenter=function(){return"an die obere mittlere Position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"Zu zufälliger Position"},c.projectileBlueFireball=function(){return"Blauer Feuerball"},c.projectilePurpleFireball=function(){return"Lila Feuerball"},c.projectileRedFireball=function(){return"Roter Feuerball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"zufällig"},c.reinfFeedbackMsg=function(){return'Du kannst den "Versuche erneut"-Button drücken, um weiterzuspielen.'},c.repeatForever=function(){return"ewig wiederholen"},c.repeatDo=function(){return"mache"},c.repeatForeverTooltip=function(){return"Führt die Aktionen innerhalb des Bausteins wiederholend aus."},c.saySprite=function(){return"sagen"},c.saySpriteN=function(a){return"Element "+v(a,"spriteIndex")+" sage"},c.saySpriteTooltip=function(){return"Blendet eine Sprechblase, mit dem eingegebenen Text, ein."},c.scoreText=function(a){return"Punktestand: "+v(a,"playerScore")},c.setBackground=function(){return"Hintergrund setzen"},c.setBackgroundRandom=function(){return"zufälligen Hintergrund setzen"},c.setBackgroundBlack=function(){return"schwarzen Hintergrund setzen"},c.setBackgroundCave=function(){return"Höhle als Hintergrund setzen"},c.setBackgroundCloudy=function(){return"Wolkigen Hintergrund setzen"},c.setBackgroundHardcourt=function(){return"Tennisplatz als Hintergrund setzen"},c.setBackgroundNight=function(){return"Nacht als Hintergrund setzen"},c.setBackgroundUnderwater=function(){return"Unterwasser als Hintergrund setzen"},c.setBackgroundCity=function(){return"Setze Hintergrund Stadt"},c.setBackgroundDesert=function(){return"Setze Hintergrund Wüste"},c.setBackgroundRainbow=function(){return"Setze Hintergrund Regenbogen"},c.setBackgroundSoccer=function(){return"Setze Hintegrund Fussball"},c.setBackgroundSpace=function(){return"Setze Hintergrund Weltall"},c.setBackgroundTennis=function(){return"Setze Hintergrund Tennis"},c.setBackgroundWinter=function(){return"Setze Hintergrund Winter"},c.setBackgroundTooltip=function(){return"Hintergrundbild setzen"},c.setScoreText=function(){return"Punktestand setzen"},c.setScoreTextTooltip=function(){return"Setzt den Text, welcher im Punktestand-Bereich angezeigt werden soll."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"zeige Fledermaus-Bild"},c.setSpriteBird=function(){return"zeige Vogel-Bild"},c.setSpriteCat=function(){return"zeige Katzen-Bild"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"zeige Dinosaurier-Bild"},c.setSpriteDog=function(){return"zeige Hund-Bild"},c.setSpriteDragon=function(){return"zeige Drachen-Bild"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"verstecke Bild"},c.setSpriteHideK1=function(){return"ausblenden"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"zeige Kraken-Bild"},c.setSpritePenguin=function(){return"zeige Pinguin-Bild"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"zeige zufälliges Bild"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"einblenden"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"zeige Eichhörnchen-Bild"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"zeige Hexen-Bild"},c.setSpriteWizard=function(){return"zeige Zauberer-Bild"},c.setSpritePositionTooltip=function(){return"Bewegt das Element sofort an die angegebene Position."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"auf eine sehr kleine Größe"},c.setSpriteSizeSmall=function(){return"auf eine kleine Größe"},c.setSpriteSizeNormal=function(){return"auf eine normale Größe"},c.setSpriteSizeLarge=function(){return"auf eine große Größe"},c.setSpriteSizeVeryLarge=function(){return"auf eine sehr große Größe"},c.setSpriteSizeTooltip=function(){return"Setzt die Größe eines Elements"},c.setSpriteSpeedRandom=function(){return"auf zufällige Geschwindigkeit wechseln"},c.setSpriteSpeedVerySlow=function(){return"auf sehr langsame Geschwindigkeit wechseln"},c.setSpriteSpeedSlow=function(){return"auf langsame Geschwindigkeit wechseln"},c.setSpriteSpeedNormal=function(){return"auf normale Geschwindigkeit wechseln"},c.setSpriteSpeedFast=function(){return"auf schnelle Geschwindigkeit wechseln"},c.setSpriteSpeedVeryFast=function(){return"auf sehr schnelle Geschwindigkeit wechseln"},c.setSpriteSpeedTooltip=function(){return"Legt die Geschwindigkeit eines Elements fest"},c.setSpriteZombie=function(){return"zu einem Zombie Bild"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"Titel"},c.showTitleScreenText=function(){return"Text"},c.showTSDefTitle=function(){return"Titel hier eingeben"},c.showTSDefText=function(){return"Text hier eingeben"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"setze"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"Holzton"},c.speed=function(){return"Geschwindigkeit"},c.stopSprite=function(){return"Stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"warten auf"},c.waitSeconds=function(){return"Sekunden"},c.waitForClick=function(){return"Auf Klick warten"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"Eine halbe Sekunde warten"},c.waitFor1Second=function(){return"1 Sekunde warten"},c.waitFor2Seconds=function(){return"2 Sekunden warten"},c.waitFor5Seconds=function(){return"5 Sekunden warten"},c.waitFor10Seconds=function(){return"10 Sekunden warten"},c.waitParamsTooltip=function(){return"Wartet eine bestimmte Anzahl an Sekunden oder auf einen Klick bei Angabe von 0."},c.waitTooltip=function(){return"Wartet eine bestimmte Anzahl an Sekunden oder auf einen Klick."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"Wenn Pfeil-nach-unten"},c.whenDownTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn die Pfeil-runter-Taste gedrückt wird."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn die Geschichte beginnt."},c.whenLeft=function(){return"Wenn Pfeil-nach-links"},c.whenLeftTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn die Pfeil-links-Taste gedrückt wird."},c.whenRight=function(){return"Wenn Pfeil-nach-rechts"},c.whenRightTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn die Pfeil-rechts-Taste gedrückt wird."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn ein Darsteller angeklickt wird."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"berührt"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"Berührt unteren Rand"},c.whenSpriteCollidedWithLeftEdge=function(){return"Berührt linken Rand"},c.whenSpriteCollidedWithRightEdge=function(){return"berührt rechten Rand"},c.whenSpriteCollidedWithTopEdge=function(){return"berührt oberen Rand"},c.whenUp=function(){return"wenn Pfeil-nach-oben"},c.whenUpTooltip=function(){return"Führe die nachfolgenden Aktionen aus, wenn die Pfeil-nach-oben-Taste gedrückt wird."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/el_gr/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/el_gr/common":40,"../../locale/el_gr/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/el_gr/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/el_gr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/el_gr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/el_gr/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/el_gr/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/el_gr/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.el=function(a){return 1===a?"one":"other"},c.and=function(){return"και"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Ενέργειες"},c.catColour=function(){return"Χρώμα"},c.catLogic=function(){return"Λογικά"},c.catLists=function(){return"Λίστες"},c.catLoops=function(){return"Βρόχοι"},c.catMath=function(){return"Μαθηματικά"},c.catProcedures=function(){return"Συναρτήσεις"},c.catText=function(){return"Κείμενο"},c.catVariables=function(){return"Μεταβλητές"},c.codeTooltip=function(){return"Δείτε τον κώδικα JavaScript."},c.continue=function(){return"Συνέχεια"},c.dialogCancel=function(){return"Άκυρο"},c.dialogOK=function(){return"OΚ"},c.directionNorthLetter=function(){return"Β"},c.directionSouthLetter=function(){return"Ν"},c.directionEastLetter=function(){return"Α"},c.directionWestLetter=function(){return"Δ"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Το μπλοκ του "Repeat" ή του "If" πρέπει να περιέχει άλλα μπλοκ για να δουλέψει. Σιγουρέψου ότι το εσωτερικό μπλοκ ταιριάζει μέσα στο εξωτερικό.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Συγχαρητήρια! τέλειωσες το τελικό στάδιο."},c.finalStageTrophies=function(a){return"Συγχαρητήρια! Τέλειωσες το τελευταίο στάδιο και κέρδισες "+p(a,"numTrophies",0,"el",{one:"τρόπαιο",other:n(a,"numTrophies")+" τράπαια"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"Τα πλακίδια από το πρόγραμμά σου μπορούν επίσης να αναπαρασταθούν στην Javascript, την πιο ευρέως διαδεδομένη γλώσσα προγραμματισμού παγκοσμίως:"},c.hashError=function(){return"Συγνώμη, το '%1' δεν αντιστοιχεί με αποθηκευμένο πρόγραμμα."},c.help=function(){return"Βοήθεια"},c.hintTitle=function(){return"Υπόδειξη:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Χρησιμοποιείς όλα τα αναγκαία είδη μπλοκ, αλλά όχι με τον σωστό τρόπο."},c.listVariable=function(){return"λίστα"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Δοκίμασε ένα ή περισσότερα από τα παρακάτω μπλοκ για να λύσεις το παζλ."},c.nextLevel=function(a){return"Συγχαρητήρια! Τελείωσες το παζλ "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Συγχαρητήρια! Τελείωσες το παζλ "+v(a,"puzzleNumber")+" και κέρδισες "+p(a,"numTrophies",0,"el",{one:"τρόπαιο",other:n(a,"numTrophies")+" τρόπαια"})+"."},c.nextStage=function(a){return"Συγχαρητήρια! Ολοκλληρωσες το στάδιο "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Συγχαρητήρια! Τελείωσες το στάδιο "+v(a,"stageNumber")+" και κέρδισες "+p(a,"numTrophies",0,"el",{one:"τρόπαιο",other:n(a,"numTrophies")+" τρόπαια"})+"." },c.numBlocksNeeded=function(a){return"Συγχαρητήρια! Τελείωσες το πάζλ "+v(a,"puzzleNumber")+". (Όμως, θα μπορούσες να βάλεις μόνο "+p(a,"numBlocks",0,"el",{one:"1 μπλοκ",other:n(a,"numBlocks")+" μπλοκ"})+".)"},c.numLinesOfCodeWritten=function(a){return"Μόλις έγραψες "+p(a,"numLines",0,"el",{one:"1 γραμμή",other:n(a,"numLines")+" γραμμές"})+" κώδικα!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Παζλ "+v(a,"puzzle_number")+" από "+v(a,"stage_total")},c.repeat=function(){return"επανάλαβε"},c.resetProgram=function(){return"Επαναφορά"},c.runProgram=function(){return"Εκτέλεση Προγράμματος"},c.runTooltip=function(){return"Τρέξε το πρόγραμμα που ορίζεται από τα μπλοκ στο χώρο εργασίας."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Προβολή Κώδικα"},c.showGeneratedCode=function(){return"Προβολή κώδικα"},c.subtitle=function(){return"ένα οπτικό περιβάλλον προγραμματισμού"},c.textVariable=function(){return"κείμενο"},c.tooFewBlocksMsg=function(){return"Χρησιμοποιείς όλα τα αναγκαία είδη μπλοκ, αλλά δοκίμασε περισσότερα μπλοκ αυτών των ειδών για να ολοκληρώσεις το παζλ."},c.tooManyBlocksMsg=function(){return"Αυτό το παζλ μπορεί να λυθεί με μπλοκ."},c.tooMuchWork=function(){return"Με ανάγκασες να κάνω πολλή δουλειά! Μπορείς με λιγότερες επαναλήψεις;"},c.toolboxHeader=function(){return"Μπλοκ"},c.openWorkspace=function(){return"Πώς λειτουργεί"},c.totalNumLinesOfCodeWritten=function(a){return"Γενικό σύνολο: "+p(a,"numLines",0,"el",{one:"1 γραμμή",other:n(a,"numLines")+" γραμμές"})+" κώδικα."},c.tryAgain=function(){return"Δοκίμασε ξανά"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Πίσω στο προηγούμενο επίπεδο"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Γράψε το δικό σου κώδικα JavaScript κάτω από αυτές τις οδηγίες."},c.typeFuncs=function(){return"Διαθέσιμες συναρτήσεις: %1"},c.typeHint=function(){return"Σημείωσε ότι οι παρενθέσεις και ερωτηματικά είναι υποχρεωτικά."},c.workspaceHeader=function(){return"Συναρμολόγησε τα μπλοκ σου εδώ: "},c.infinity=function(){return"άπειρο"},c.rotateText=function(){return"Γυρίστε τη συσκευή σας."},c.orientationLock=function(){return"Απενεργοποιήστε το κλείδωμα περιστροφής στις ρυθμίσης της συσκευής."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.el=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Ενέργειες"},c.catControl=function(){return"Βρόχοι"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Λογικά"},c.catMath=function(){return"Μαθηματικά"},c.catProcedures=function(){return"Συναρτήσεις"},c.catText=function(){return"Κείμενο"},c.catVariables=function(){return"Μεταβλητές"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Συνέχεια"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Συγχαρητήρια! Έλυσες το τελευταίο Παζλ."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"τυχαίο"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"εικονοστοιχεία"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"Προχώρησε προς τα κάτω"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"Προχώρησε αριστερά"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"Προχώρησε δεξιά"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"προχώρησε προς τα επάνω"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Συγχαρητήρια! Έχεις ολοκληρώσει αυτό το παζλ."},c.no=function(){return"Όχι"},c.numBlocksNeeded=function(){return"Αυτό το παζλ μπορεί να λυθεί με %1 μπλοκ."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"τυχαίο"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"κάνε"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"κείμενο"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"ορίζω"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Ναι"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/en_ploc/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/en_ploc/common":40,"../../locale/en_ploc/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/en_ploc/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/en_ploc/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/en_ploc/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/en_ploc/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_ploc/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_ploc/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.and=function(){return"!!-and-!!"},c.blocklyMessage=function(){return"!!-Blockly-!!"},c.catActions=function(){return"!!-Actions-!!"},c.catColour=function(){return"!!-Colour-!!"},c.catLogic=function(){return"!!-Logic-!!"},c.catLists=function(){return"!!-Lists-!!"},c.catLoops=function(){return"!!-Loops-!!"},c.catMath=function(){return"!!-Math-!!"},c.catProcedures=function(){return"!!-Functions-!!"},c.catText=function(){return"!!-Text-!!"},c.catVariables=function(){return"!!-Variables-!!"},c.codeTooltip=function(){return"!!-See generated JavaScript code.-!!"},c.continue=function(){return"!!-Continue-!!"},c.dialogCancel=function(){return"!!-Cancel-!!"},c.dialogOK=function(){return"!!-OK-!!"},c.directionNorthLetter=function(){return"!!-N-!!"},c.directionSouthLetter=function(){return"!!-S-!!"},c.directionEastLetter=function(){return"!!-E-!!"},c.directionWestLetter=function(){return"!!-W-!!"},c.end=function(){return"!!-end-!!"},c.emptyBlocksErrorMsg=function(){return'!!-The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.-!!'},c.emptyFunctionBlocksErrorMsg=function(){return"!!-The function block needs to have other blocks inside it to work.-!!"},c.extraTopBlocks=function(){return'!!-You have unattached blocks. Did you mean to attach these to the "when run" block?-!!'},c.finalStage=function(){return"!!-Congratulations! You have completed the final stage.-!!"},c.finalStageTrophies=function(a){return"!!-Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+".-!!"},c.finish=function(){return"!!-Finish-!!"},c.generatedCodeInfo=function(a){return"!!-Even top universities teach block-based coding (e.g., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). But under the hood, the blocks you have assembled can also be shown in JavaScript, the world's most widely used coding language:-!!"},c.hashError=function(){return"!!-Sorry, '%1' doesn't correspond with any saved program.-!!"},c.help=function(){return"!!-Help-!!"},c.hintTitle=function(){return"!!-Hint:-!!"},c.jump=function(){return"!!-jump-!!"},c.levelIncompleteError=function(){return"!!-You are using all of the necessary types of blocks but not in the right way.-!!"},c.listVariable=function(){return"!!-list-!!"},c.makeYourOwnFlappy=function(){return"!!-Make Your Own Flappy Game-!!"},c.missingBlocksErrorMsg=function(){return"!!-Try one or more of the blocks below to solve this puzzle.-!!"},c.nextLevel=function(a){return"!!-Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+".-!!"},c.nextLevelTrophies=function(a){return"!!-Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+".-!!" },c.nextStage=function(a){return"!!-Congratulations! You completed "+v(a,"stageName")+".-!!"},c.nextStageTrophies=function(a){return"!!-Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+".-!!"},c.numBlocksNeeded=function(a){return"!!-Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"en",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)-!!"},c.numLinesOfCodeWritten=function(a){return"!!-You just wrote "+p(a,"numLines",0,"en",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!-!!"},c.play=function(){return"!!-play-!!"},c.puzzleTitle=function(a){return"!!-Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")+"-!!"},c.repeat=function(){return"!!-repeat-!!"},c.resetProgram=function(){return"!!-Reset-!!"},c.runProgram=function(){return"!!-Run-!!"},c.runTooltip=function(){return"!!-Run the program defined by the blocks in the workspace.-!!"},c.score=function(){return"!!-score-!!"},c.showCodeHeader=function(){return"!!-Show Code-!!"},c.showGeneratedCode=function(){return"!!-Show code-!!"},c.subtitle=function(){return"!!-a visual programming environment-!!"},c.textVariable=function(){return"!!-text-!!"},c.tooFewBlocksMsg=function(){return"!!-You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle.-!!"},c.tooManyBlocksMsg=function(){return"!!-This puzzle can be solved with blocks.-!!"},c.tooMuchWork=function(){return"!!-You made me do a lot of work! Could you try repeating fewer times?-!!"},c.toolboxHeader=function(){return"!!-Blocks-!!"},c.openWorkspace=function(){return"!!-How It Works-!!"},c.totalNumLinesOfCodeWritten=function(a){return"!!-All-time total: "+p(a,"numLines",0,"en",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code.-!!"},c.tryAgain=function(){return"!!-Try again-!!"},c.hintRequest=function(){return"!!-See hint-!!"},c.backToPreviousLevel=function(){return"!!-Back to previous level-!!"},c.saveToGallery=function(){return"!!-Save to your gallery-!!"},c.savedToGallery=function(){return"!!-Saved to your gallery!-!!"},c.typeCode=function(){return"!!-Type your JavaScript code below these instructions.-!!"},c.typeFuncs=function(){return"!!-Available functions:%1-!!"},c.typeHint=function(){return"!!-Note that the parentheses and semicolons are required.-!!"},c.workspaceHeader=function(){return"!!-Assemble your blocks here: -!!"},c.infinity=function(){return"!!-Infinity-!!"},c.rotateText=function(){return"!!-Rotate your device.-!!"},c.orientationLock=function(){return"!!-Turn off orientation lock in device settings.-!!"},c.wantToLearn=function(){return"!!-Want to learn to code?-!!"},c.watchVideo=function(){return"!!-Watch the Video-!!"},c.when=function(){return"!!-when-!!"},c.whenRun=function(){return"!!-when run-!!"},c.tryHOC=function(){return"!!-Try the Hour of Code-!!"},c.signup=function(){return"!!-Sign up for the intro course-!!"},c.hintHeader=function(){return"!!-Here's a tip:-!!"},c.genericFeedback=function(){return"!!-See how you ended up, and try to fix your program.-!!"}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.actor=function(){return"!!-actor-!!"},c.catActions=function(){return"!!-Actions-!!"},c.catControl=function(){return"!!-Loops-!!"},c.catEvents=function(){return"!!-Events-!!"},c.catLogic=function(){return"!!-Logic-!!"},c.catMath=function(){return"!!-Math-!!"},c.catProcedures=function(){return"!!-Functions-!!"},c.catText=function(){return"!!-Text-!!"},c.catVariables=function(){return"!!-Variables-!!"},c.changeScoreTooltip=function(){return"!!-Add or remove a point to the score.-!!"},c.changeScoreTooltipK1=function(){return"!!-Add a point to the score.-!!"},c.continue=function(){return"!!-Continue-!!"},c.decrementPlayerScore=function(){return"!!-remove point-!!"},c.defaultSayText=function(){return"!!-type here-!!"},c.emotion=function(){return"!!-mood-!!"},c.finalLevel=function(){return"!!-Congratulations! You have solved the final puzzle.-!!"},c.hello=function(){return"!!-hello-!!"},c.helloWorld=function(){return"!!-Hello World!-!!"},c.incrementPlayerScore=function(){return"!!-score point-!!"},c.makeProjectileDisappear=function(){return"!!-disappear-!!"},c.makeProjectileBounce=function(){return"!!-bounce-!!"},c.makeProjectileBlueFireball=function(){return"!!-make blue fireball-!!"},c.makeProjectilePurpleFireball=function(){return"!!-make purple fireball-!!"},c.makeProjectileRedFireball=function(){return"!!-make red fireball-!!"},c.makeProjectileYellowHearts=function(){return"!!-make yellow hearts-!!"},c.makeProjectilePurpleHearts=function(){return"!!-make purple hearts-!!"},c.makeProjectileRedHearts=function(){return"!!-make red hearts-!!"},c.makeProjectileTooltip=function(){return"!!-Make the projectile that just collided disappear or bounce.-!!"},c.makeYourOwn=function(){return"!!-Make Your Own Story-!!"},c.moveDirectionDown=function(){return"!!-down-!!"},c.moveDirectionLeft=function(){return"!!-left-!!"},c.moveDirectionRight=function(){return"!!-right-!!"},c.moveDirectionUp=function(){return"!!-up-!!"},c.moveDirectionRandom=function(){return"!!-random-!!"},c.moveDistance25=function(){return"!!-25 pixels-!!"},c.moveDistance50=function(){return"!!-50 pixels-!!"},c.moveDistance100=function(){return"!!-100 pixels-!!"},c.moveDistance200=function(){return"!!-200 pixels-!!"},c.moveDistance400=function(){return"!!-400 pixels-!!"},c.moveDistancePixels=function(){return"!!-pixels-!!"},c.moveDistanceRandom=function(){return"!!-random pixels-!!"},c.moveDistanceTooltip=function(){return"!!-Move an actor a specific distance in the specified direction.-!!"},c.moveSprite=function(){return"!!-move-!!"},c.moveSpriteN=function(a){return"!!-move actor "+v(a,"spriteIndex")+"-!!"},c.moveDown=function(){return"!!-move down-!!"},c.moveDownTooltip=function(){return"!!-Move an actor down.-!!"},c.moveLeft=function(){return"!!-move left-!!"},c.moveLeftTooltip=function(){return"!!-Move an actor to the left.-!!"},c.moveRight=function(){return"!!-move right-!!"},c.moveRightTooltip=function(){return"!!-Move an actor to the right.-!!"},c.moveUp=function(){return"!!-move up-!!"},c.moveUpTooltip=function(){return"!!-Move an actor up.-!!"},c.moveTooltip=function(){return"!!-Move an actor.-!!"},c.nextLevel=function(){return"!!-Congratulations! You have completed this puzzle.-!!"},c.no=function(){return"!!-No-!!"},c.numBlocksNeeded=function(){return"!!-This puzzle can be solved with %1 blocks.-!!"},c.ouchExclamation=function(){return"!!-Ouch!-!!"},c.playSoundCrunch=function(){return"!!-play crunch sound-!!"},c.playSoundGoal1=function(){return"!!-play goal 1 sound-!!"},c.playSoundGoal2=function(){return"!!-play goal 2 sound-!!"},c.playSoundHit=function(){return"!!-play hit sound-!!"},c.playSoundLosePoint=function(){return"!!-play lose point sound-!!"},c.playSoundLosePoint2=function(){return"!!-play lose point 2 sound-!!"},c.playSoundRetro=function(){return"!!-play retro sound-!!"},c.playSoundRubber=function(){return"!!-play rubber sound-!!"},c.playSoundSlap=function(){return"!!-play slap sound-!!"},c.playSoundTooltip=function(){return"!!-Play the chosen sound.-!!"},c.playSoundWinPoint=function(){return"!!-play win point sound-!!"},c.playSoundWinPoint2=function(){return"!!-play win point 2 sound-!!"},c.playSoundWood=function(){return"!!-play wood sound-!!"},c.positionOutTopLeft=function(){return"!!-to the above top left position-!!"},c.positionOutTopRight=function(){return"!!-to the above top right position-!!"},c.positionTopOutLeft=function(){return"!!-to the top outside left position-!!"},c.positionTopLeft=function(){return"!!-to the top left position-!!"},c.positionTopCenter=function(){return"!!-to the top center position-!!"},c.positionTopRight=function(){return"!!-to the top right position-!!"},c.positionTopOutRight=function(){return"!!-to the top outside right position-!!"},c.positionMiddleLeft=function(){return"!!-to the middle left position-!!"},c.positionMiddleCenter=function(){return"!!-to the middle center position-!!"},c.positionMiddleRight=function(){return"!!-to the middle right position-!!"},c.positionBottomOutLeft=function(){return"!!-to the bottom outside left position-!!"},c.positionBottomLeft=function(){return"!!-to the bottom left position-!!"},c.positionBottomCenter=function(){return"!!-to the bottom center position-!!"},c.positionBottomRight=function(){return"!!-to the bottom right position-!!"},c.positionBottomOutRight=function(){return"!!-to the bottom outside right position-!!"},c.positionOutBottomLeft=function(){return"!!-to the below bottom left position-!!"},c.positionOutBottomRight=function(){return"!!-to the below bottom right position-!!"},c.positionRandom=function(){return"!!-to the random position-!!"},c.projectileBlueFireball=function(){return"!!-blue fireball-!!"},c.projectilePurpleFireball=function(){return"!!-purple fireball-!!"},c.projectileRedFireball=function(){return"!!-red fireball-!!"},c.projectileYellowHearts=function(){return"!!-yellow hearts-!!"},c.projectilePurpleHearts=function(){return"!!-purple hearts-!!"},c.projectileRedHearts=function(){return"!!-red hearts-!!"},c.projectileRandom=function(){return"!!-random-!!"},c.reinfFeedbackMsg=function(){return'!!-You can press the "Try again" button to go back to playing your story.-!!'},c.repeatForever=function(){return"!!-repeat forever-!!"},c.repeatDo=function(){return"!!-do-!!"},c.repeatForeverTooltip=function(){return"!!-Execute the actions in this block repeatedly while the story is running.-!!"},c.saySprite=function(){return"!!-say-!!"},c.saySpriteN=function(a){return"!!-actor "+v(a,"spriteIndex")+" say-!!"},c.saySpriteTooltip=function(){return"!!-Pop up a speech bubble with the associated text from the specified actor.-!!"},c.scoreText=function(a){return"!!-Score: "+v(a,"playerScore")+"-!!"},c.setBackground=function(){return"!!-set background-!!"},c.setBackgroundRandom=function(){return"!!-set random background-!!"},c.setBackgroundBlack=function(){return"!!-set black background-!!"},c.setBackgroundCave=function(){return"!!-set cave background-!!"},c.setBackgroundCloudy=function(){return"!!-set cloudy background-!!"},c.setBackgroundHardcourt=function(){return"!!-set hardcourt background-!!"},c.setBackgroundNight=function(){return"!!-set night background-!!"},c.setBackgroundUnderwater=function(){return"!!-set underwater background-!!"},c.setBackgroundCity=function(){return"!!-set city background-!!"},c.setBackgroundDesert=function(){return"!!-set desert background-!!"},c.setBackgroundRainbow=function(){return"!!-set rainbow background-!!"},c.setBackgroundSoccer=function(){return"!!-set soccer background-!!"},c.setBackgroundSpace=function(){return"!!-set space background-!!"},c.setBackgroundTennis=function(){return"!!-set tennis background-!!"},c.setBackgroundWinter=function(){return"!!-set winter background-!!"},c.setBackgroundTooltip=function(){return"!!-Sets the background image-!!"},c.setScoreText=function(){return"!!-set score-!!"},c.setScoreTextTooltip=function(){return"!!-Sets the text to be displayed in the score area.-!!"},c.setSpriteEmotionAngry=function(){return"!!-to a angry mood-!!"},c.setSpriteEmotionHappy=function(){return"!!-to a happy mood-!!"},c.setSpriteEmotionNormal=function(){return"!!-to a normal mood-!!"},c.setSpriteEmotionRandom=function(){return"!!-to a random mood-!!"},c.setSpriteEmotionSad=function(){return"!!-to a sad mood-!!"},c.setSpriteEmotionTooltip=function(){return"!!-Sets the actor mood-!!"},c.setSpriteAlien=function(){return"!!-to an alien image-!!"},c.setSpriteBat=function(){return"!!-to a bat image-!!"},c.setSpriteBird=function(){return"!!-to a bird image-!!"},c.setSpriteCat=function(){return"!!-to a cat image-!!"},c.setSpriteCaveBoy=function(){return"!!-to a cave boy image-!!"},c.setSpriteCaveGirl=function(){return"!!-to a cave girl image-!!"},c.setSpriteDinosaur=function(){return"!!-to a dinosaur image-!!"},c.setSpriteDog=function(){return"!!-to a dog image-!!"},c.setSpriteDragon=function(){return"!!-to a dragon image-!!"},c.setSpriteGhost=function(){return"!!-to a ghost image-!!"},c.setSpriteHidden=function(){return"!!-to a hidden image-!!"},c.setSpriteHideK1=function(){return"!!-hide-!!"},c.setSpriteKnight=function(){return"!!-to a knight image-!!"},c.setSpriteMonster=function(){return"!!-to a monster image-!!"},c.setSpriteNinja=function(){return"!!-to a masked ninja image-!!"},c.setSpriteOctopus=function(){return"!!-to an octopus image-!!"},c.setSpritePenguin=function(){return"!!-to a penguin image-!!"},c.setSpritePirate=function(){return"!!-to a pirate image-!!"},c.setSpritePrincess=function(){return"!!-to a princess image-!!"},c.setSpriteRandom=function(){return"!!-to a random image-!!"},c.setSpriteRobot=function(){return"!!-to a robot image-!!"},c.setSpriteShowK1=function(){return"!!-show-!!"},c.setSpriteSpacebot=function(){return"!!-to a spacebot image-!!"},c.setSpriteSoccerGirl=function(){return"!!-to a soccer girl image-!!"},c.setSpriteSoccerBoy=function(){return"!!-to a soccer boy image-!!"},c.setSpriteSquirrel=function(){return"!!-to a squirrel image-!!"},c.setSpriteTennisGirl=function(){return"!!-to a tennis girl image-!!"},c.setSpriteTennisBoy=function(){return"!!-to a tennis boy image-!!"},c.setSpriteUnicorn=function(){return"!!-to a unicorn image-!!"},c.setSpriteWitch=function(){return"!!-to a witch image-!!"},c.setSpriteWizard=function(){return"!!-to a wizard image-!!"},c.setSpritePositionTooltip=function(){return"!!-Instantly moves an actor to the specified location.-!!"},c.setSpriteK1Tooltip=function(){return"!!-Shows or hides the specified actor.-!!"},c.setSpriteTooltip=function(){return"!!-Sets the actor image-!!"},c.setSpriteSizeRandom=function(){return"!!-to a random size-!!"},c.setSpriteSizeVerySmall=function(){return"!!-to a very small size-!!"},c.setSpriteSizeSmall=function(){return"!!-to a small size-!!"},c.setSpriteSizeNormal=function(){return"!!-to a normal size-!!"},c.setSpriteSizeLarge=function(){return"!!-to a large size-!!"},c.setSpriteSizeVeryLarge=function(){return"!!-to a very large size-!!"},c.setSpriteSizeTooltip=function(){return"!!-Sets the size of an actor-!!"},c.setSpriteSpeedRandom=function(){return"!!-to a random speed-!!"},c.setSpriteSpeedVerySlow=function(){return"!!-to a very slow speed-!!"},c.setSpriteSpeedSlow=function(){return"!!-to a slow speed-!!"},c.setSpriteSpeedNormal=function(){return"!!-to a normal speed-!!"},c.setSpriteSpeedFast=function(){return"!!-to a fast speed-!!"},c.setSpriteSpeedVeryFast=function(){return"!!-to a very fast speed-!!"},c.setSpriteSpeedTooltip=function(){return"!!-Sets the speed of an actor-!!"},c.setSpriteZombie=function(){return"!!-to a zombie image-!!"},c.shareStudioTwitter=function(){return"!!-Check out the story I made. I wrote it myself with @codeorg-!!"},c.shareGame=function(){return"!!-Share your story:-!!"},c.showTitleScreen=function(){return"!!-show title screen-!!"},c.showTitleScreenTitle=function(){return"!!-title-!!"},c.showTitleScreenText=function(){return"!!-text-!!"},c.showTSDefTitle=function(){return"!!-type title here-!!"},c.showTSDefText=function(){return"!!-type text here-!!"},c.showTitleScreenTooltip=function(){return"!!-Show a title screen with the associated title and text.-!!"},c.setSprite=function(){return"!!-set-!!"},c.setSpriteN=function(a){return"!!-set actor "+v(a,"spriteIndex")+"-!!"},c.soundCrunch=function(){return"!!-crunch-!!"},c.soundGoal1=function(){return"!!-goal 1-!!"},c.soundGoal2=function(){return"!!-goal 2-!!"},c.soundHit=function(){return"!!-hit-!!"},c.soundLosePoint=function(){return"!!-lose point-!!"},c.soundLosePoint2=function(){return"!!-lose point 2-!!"},c.soundRetro=function(){return"!!-retro-!!"},c.soundRubber=function(){return"!!-rubber-!!"},c.soundSlap=function(){return"!!-slap-!!"},c.soundWinPoint=function(){return"!!-win point-!!"},c.soundWinPoint2=function(){return"!!-win point 2-!!"},c.soundWood=function(){return"!!-wood-!!"},c.speed=function(){return"!!-speed-!!"},c.stopSprite=function(){return"!!-stop-!!"},c.stopSpriteN=function(a){return"!!-stop actor "+v(a,"spriteIndex")+"-!!"},c.stopTooltip=function(){return"!!-Stops an actor's movement.-!!"},c.throwSprite=function(){return"!!-throw-!!"},c.throwSpriteN=function(a){return"!!-actor "+v(a,"spriteIndex")+" throw-!!"},c.throwTooltip=function(){return"!!-Throws a projectile from the specified actor.-!!"},c.vanish=function(){return"!!-vanish-!!"},c.vanishActorN=function(a){return"!!-vanish actor "+v(a,"spriteIndex")+"-!!"},c.vanishTooltip=function(){return"!!-Vanishes the actor.-!!"},c.waitFor=function(){return"!!-wait for-!!"},c.waitSeconds=function(){return"!!-seconds-!!"},c.waitForClick=function(){return"!!-wait for click-!!"},c.waitForRandom=function(){return"!!-wait for random-!!"},c.waitForHalfSecond=function(){return"!!-wait for a half second-!!"},c.waitFor1Second=function(){return"!!-wait for 1 second-!!"},c.waitFor2Seconds=function(){return"!!-wait for 2 seconds-!!"},c.waitFor5Seconds=function(){return"!!-wait for 5 seconds-!!"},c.waitFor10Seconds=function(){return"!!-wait for 10 seconds-!!"},c.waitParamsTooltip=function(){return"!!-Waits for a specified number of seconds or use zero to wait until a click occurs.-!!"},c.waitTooltip=function(){return"!!-Waits for a specified amount of time or until a click occurs.-!!"},c.whenArrowDown=function(){return"!!-down arrow-!!"},c.whenArrowLeft=function(){return"!!-left arrow-!!"},c.whenArrowRight=function(){return"!!-right arrow-!!"},c.whenArrowUp=function(){return"!!-up arrow-!!"},c.whenArrowTooltip=function(){return"!!-Execute the actions below when the specified arrow key is pressed.-!!"},c.whenDown=function(){return"!!-when down arrow-!!"},c.whenDownTooltip=function(){return"!!-Execute the actions below when the down arrow key is pressed.-!!"},c.whenGameStarts=function(){return"!!-when story starts-!!"},c.whenGameStartsTooltip=function(){return"!!-Execute the actions below when the story starts.-!!"},c.whenLeft=function(){return"!!-when left arrow-!!"},c.whenLeftTooltip=function(){return"!!-Execute the actions below when the left arrow key is pressed.-!!"},c.whenRight=function(){return"!!-when right arrow-!!"},c.whenRightTooltip=function(){return"!!-Execute the actions below when the right arrow key is pressed.-!!"},c.whenSpriteClicked=function(){return"!!-when actor clicked-!!"},c.whenSpriteClickedN=function(a){return"!!-when actor "+v(a,"spriteIndex")+" clicked-!!"},c.whenSpriteClickedTooltip=function(){return"!!-Execute the actions below when an actor is clicked.-!!"},c.whenSpriteCollidedN=function(a){return"!!-when actor "+v(a,"spriteIndex")+"-!!"},c.whenSpriteCollidedTooltip=function(){return"!!-Execute the actions below when an actor touches another actor.-!!"},c.whenSpriteCollidedWith=function(){return"!!-touches-!!"},c.whenSpriteCollidedWithN=function(a){return"!!-touches actor "+v(a,"spriteIndex")+"-!!"},c.whenSpriteCollidedWithBlueFireball=function(){return"!!-touches blue fireball-!!"},c.whenSpriteCollidedWithPurpleFireball=function(){return"!!-touches purple fireball-!!"},c.whenSpriteCollidedWithRedFireball=function(){return"!!-touches red fireball-!!"},c.whenSpriteCollidedWithYellowHearts=function(){return"!!-touches yellow hearts-!!"},c.whenSpriteCollidedWithPurpleHearts=function(){return"!!-touches purple hearts-!!"},c.whenSpriteCollidedWithRedHearts=function(){return"!!-touches red hearts-!!"},c.whenSpriteCollidedWithBottomEdge=function(){return"!!-touches bottom edge-!!"},c.whenSpriteCollidedWithLeftEdge=function(){return"!!-touches left edge-!!"},c.whenSpriteCollidedWithRightEdge=function(){return"!!-touches right edge-!!"},c.whenSpriteCollidedWithTopEdge=function(){return"!!-touches top edge-!!"},c.whenUp=function(){return"!!-when up arrow-!!"},c.whenUpTooltip=function(){return"!!-Execute the actions below when the up arrow key is pressed.-!!"},c.yes=function(){return"!!-Yes-!!"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/en_us/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/en_us/common":40,"../../locale/en_us/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/en_us/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/en_us/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/en_us/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/en_us/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/en_us/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/en_us/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.and=function(){return"and"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Actions"},c.catColour=function(){return"Colour"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Lists"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"See generated JavaScript code."},c.continue=function(){return"Continue"},c.dialogCancel=function(){return"Cancel"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return'You have unattached blocks. Did you mean to attach these to the "when run" block?'},c.finalStage=function(){return"Congratulations! You have completed the final stage."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Even top universities teach block-based coding (e.g., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). But under the hood, the blocks you have assembled can also be shown in JavaScript, the world's most widely used coding language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Help"},c.hintTitle=function(){return"Hint:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"list"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"en",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"en",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"en",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"repeat"},c.resetProgram=function(){return"Reset"},c.runProgram=function(){return"Run"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Show Code"},c.showGeneratedCode=function(){return"Show code"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blocks"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"en",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Try again"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.en=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Actions"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Continue"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"score point"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"random"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move an actor a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move an actor down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move an actor to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move an actor to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move an actor up."},c.moveTooltip=function(){return"Move an actor."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play the chosen sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"random"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified actor."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random background"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt background"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry mood"},c.setSpriteEmotionHappy=function(){return"to a happy mood"},c.setSpriteEmotionNormal=function(){return"to a normal mood"},c.setSpriteEmotionRandom=function(){return"to a random mood"},c.setSpriteEmotionSad=function(){return"to a sad mood"},c.setSpriteEmotionTooltip=function(){return"Sets the actor mood"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the actor image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of an actor"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the down arrow key is pressed."},c.whenGameStarts=function(){return"when story starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the story starts."},c.whenLeft=function(){return"when left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the left arrow key is pressed."},c.whenRight=function(){return"when right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the right arrow key is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when an actor is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when an actor touches another actor."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the up arrow key is pressed."},c.yes=function(){return"Yes"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1]; if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/es_es/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/es_es/common":40,"../../locale/es_es/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/es_es/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/es_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/es_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/es_es/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/es_es/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/es_es/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.es=function(a){return 1===a?"one":"other"},c.and=function(){return"y"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Acciones"},c.catColour=function(){return"Color"},c.catLogic=function(){return"Lógica"},c.catLists=function(){return"Listas"},c.catLoops=function(){return"Iteraciones"},c.catMath=function(){return"Matemáticas"},c.catProcedures=function(){return"Funciones"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"Ver el código JavaScript generado."},c.continue=function(){return"Continuar"},c.dialogCancel=function(){return"Cancelar"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"O"},c.end=function(){return"fin"},c.emptyBlocksErrorMsg=function(){return'Los bloques "repetir" o "si" deben tener otros bloques dentro de ellos para funcionar. Asegúrate que el bloque interno quede correctamente dentro del bloque que lo contiene.'},c.emptyFunctionBlocksErrorMsg=function(){return"El bloque de función necesita tener otros bloques en su interior para funcionar."},c.extraTopBlocks=function(){return"Tienes bloques adicionales que no están conectados a un bloque de evento."},c.finalStage=function(){return"¡Felicidades! Has completado la etapa final."},c.finalStageTrophies=function(a){return"¡Felicidades! Has completado la etapa final y ganaste "+p(a,"numTrophies",0,"es",{one:"un trofeo",other:n(a,"numTrophies")+" trofeos"})+"."},c.finish=function(){return"Terminar"},c.generatedCodeInfo=function(a){return"Incluso las mejores universidades enseñan codificación basada en bloques (por ejemplo, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Aun así los bloques que has codificado se pueden mostrar en JavaScript, el lenguaje de programación más utilizado en el mundo:"},c.hashError=function(){return"Lo sentimos, '%1' no se corresponde con ningún programa guardado."},c.help=function(){return"Ayuda"},c.hintTitle=function(){return"Sugerencia:"},c.jump=function(){return"salta"},c.levelIncompleteError=function(){return"Estás utilizando todos los tipos necesarios de bloques pero no de la manera correcta."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Crea tu propio juego Flappy Bird"},c.missingBlocksErrorMsg=function(){return"Trata de resolver este puzzle usando uno o más de los bloques de abajo."},c.nextLevel=function(a){return"¡Felicidades! Completaste el Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"¡Felicidades! Completaste el puzzle "+v(a,"puzzleNumber")+" y ganaste "+p(a,"numTrophies",0,"es",{one:"un trofeo",other:n(a,"numTrophies")+" trofeos"})+"."},c.nextStage=function(a){return"¡Felicitaciones! Ha completado la fase "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"¡Felicitaciones ha completado la fase "+v(a,"stageName")+" y ha ganado "+p(a,"numTrophies",0,"es",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"¡Felicidades! Completaste el puzzle "+v(a,"puzzleNumber")+". (Sin embargo, podrías haber usado sólo "+p(a,"numBlocks",0,"es",{one:"1 bloque",other:n(a,"numBlocks")+" bloques"})+".)"},c.numLinesOfCodeWritten=function(a){return"¡Acabas de escribir "+p(a,"numLines",0,"es",{one:"una línea",other:n(a,"numLines")+" líneas"})+" de código!"},c.play=function(){return"jugar"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" de "+v(a,"stage_total")},c.repeat=function(){return"repetir"},c.resetProgram=function(){return"Reiniciar"},c.runProgram=function(){return"Ejecutar"},c.runTooltip=function(){return"Ejecuta el programa definido por los bloques del espacio de trabajo."},c.score=function(){return"puntuación"},c.showCodeHeader=function(){return"Mostrar el código"},c.showGeneratedCode=function(){return"Mostrar el código"},c.subtitle=function(){return"un entorno de programación visual"},c.textVariable=function(){return"texto"},c.tooFewBlocksMsg=function(){return"Estás utilizando todos los tipos necesarios de bloques, pero trata de usar más de estos tipos de bloques para completar este puzzle."},c.tooManyBlocksMsg=function(){return"Puedes resolver este puzzle con bloques."},c.tooMuchWork=function(){return"¡Me has hecho trabajar mucho! ¿Podrías tratar de repetir menos veces?"},c.toolboxHeader=function(){return"Bloques"},c.openWorkspace=function(){return"Cómo funciona"},c.totalNumLinesOfCodeWritten=function(a){return"Total: "+p(a,"numLines",0,"es",{one:"1 línea",other:n(a,"numLines")+" lineas"})+" de código."},c.tryAgain=function(){return"Vuelve a intentarlo"},c.hintRequest=function(){return"Ver pista"},c.backToPreviousLevel=function(){return"Volver al nivel anterior"},c.saveToGallery=function(){return"Guardar en su galería"},c.savedToGallery=function(){return"¡Guardado en su galería!"},c.typeCode=function(){return"Escribe tu código JavaScript debajo de estas instrucciones."},c.typeFuncs=function(){return"Funciones disponibles:%1"},c.typeHint=function(){return"Ten en cuenta que los paréntesis y los punto y coma son necesarios."},c.workspaceHeader=function(){return"Coloca tus bloques aquí:"},c.infinity=function(){return"Infinito"},c.rotateText=function(){return"Gira tu dispositivo."},c.orientationLock=function(){return"Desactiva el bloqueo de orientación en la configuración del dispositivo."},c.wantToLearn=function(){return"¿Quieres aprender a programar?"},c.watchVideo=function(){return"Mira el Video"},c.when=function(){return"cuando"},c.whenRun=function(){return"cuando se ejecuta"},c.tryHOC=function(){return"Prueba la Hora del Código"},c.signup=function(){return"Únete al curso de introducción"},c.hintHeader=function(){return"Aquí hay un consejo:"},c.genericFeedback=function(){return"Ver como terminaste, y tratar de reparar tu programa."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.es=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Acciones"},c.catControl=function(){return"Bucles"},c.catEvents=function(){return"Eventos"},c.catLogic=function(){return"Lógica"},c.catMath=function(){return"Matemáticas"},c.catProcedures=function(){return"Funciones"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Agregar o quitar un punto a la puntuación."},c.changeScoreTooltipK1=function(){return"Añadir un punto a la puntuación."},c.continue=function(){return"Continuar"},c.decrementPlayerScore=function(){return"Quitar punto"},c.defaultSayText=function(){return"Escriba aquí"},c.emotion=function(){return"estado de ánimo"},c.finalLevel=function(){return"¡Felicidades! Has resuelto el rompecabezas final."},c.hello=function(){return"hola"},c.helloWorld=function(){return"Hola Mundo!"},c.incrementPlayerScore=function(){return"Puntuación punto"},c.makeProjectileDisappear=function(){return"desaparecer"},c.makeProjectileBounce=function(){return"rebote"},c.makeProjectileBlueFireball=function(){return"hacer bola de fuego azul"},c.makeProjectilePurpleFireball=function(){return"hacer bola de fuego púrpura"},c.makeProjectileRedFireball=function(){return"hacer bola de fuego roja"},c.makeProjectileYellowHearts=function(){return"hacer corazones amarillos"},c.makeProjectilePurpleHearts=function(){return"hacer corazones morados"},c.makeProjectileRedHearts=function(){return"hacer corazones rojos"},c.makeProjectileTooltip=function(){return"Hacer que el proyectil que acaba de chocar desaparesca o rebote."},c.makeYourOwn=function(){return"Hacer tu propia historia"},c.moveDirectionDown=function(){return"abajo"},c.moveDirectionLeft=function(){return"izquierda"},c.moveDirectionRight=function(){return"derecha"},c.moveDirectionUp=function(){return"arriba"},c.moveDirectionRandom=function(){return"aleatoro"},c.moveDistance25=function(){return"25 píxeles"},c.moveDistance50=function(){return"50 píxeles"},c.moveDistance100=function(){return"100 píxeles"},c.moveDistance200=function(){return"200 píxeles"},c.moveDistance400=function(){return"400 píxeles"},c.moveDistancePixels=function(){return"pixeles"},c.moveDistanceRandom=function(){return"pixeles aleatorios"},c.moveDistanceTooltip=function(){return"Mover un actor una distancia específica en la dirección especificada."},c.moveSprite=function(){return"Mover"},c.moveSpriteN=function(a){return"mover actor "+v(a,"spriteIndex")},c.moveDown=function(){return"Bajar"},c.moveDownTooltip=function(){return"Bajar a un actor."},c.moveLeft=function(){return"mover hacia la izquierda"},c.moveLeftTooltip=function(){return"Mover un actor a la izquierda."},c.moveRight=function(){return"mover hacia la derecha"},c.moveRightTooltip=function(){return"Mover un actor hacia la derecha."},c.moveUp=function(){return"mueva hacia arriba"},c.moveUpTooltip=function(){return"Sube a un actor."},c.moveTooltip=function(){return"Mueve a un actor."},c.nextLevel=function(){return"¡Enhorabuena! Has completado este puzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"Este puzle puede resolverse con %1 bloques."},c.ouchExclamation=function(){return"¡Ay!"},c.playSoundCrunch=function(){return"reproducir sonido crujido"},c.playSoundGoal1=function(){return"reproducir sonido meta 1"},c.playSoundGoal2=function(){return"reproducir sonido meta 2"},c.playSoundHit=function(){return"reproducir sonido golpe"},c.playSoundLosePoint=function(){return"Reproducir sonido punto perdido"},c.playSoundLosePoint2=function(){return"Reproducir sonido punto perdido 2"},c.playSoundRetro=function(){return"reproducir sonido retro"},c.playSoundRubber=function(){return"emitir sonido de goma"},c.playSoundSlap=function(){return"emitir sonido cachetada"},c.playSoundTooltip=function(){return"Reproduce el sonido seleccionado."},c.playSoundWinPoint=function(){return"Reproducir sonido punto ganado"},c.playSoundWinPoint2=function(){return"Reproducir sonido punto ganado 2"},c.playSoundWood=function(){return"Reproducir sonido de madera"},c.positionOutTopLeft=function(){return"a la posición superior izquierda"},c.positionOutTopRight=function(){return"a la posición superior derecha"},c.positionTopOutLeft=function(){return"a la posición superior izquierda externa"},c.positionTopLeft=function(){return"Hacia la posición superior izquierda"},c.positionTopCenter=function(){return"Hacia la posición superior central"},c.positionTopRight=function(){return"Hacia la posición superior derecha"},c.positionTopOutRight=function(){return"a la posición superior derecha externa"},c.positionMiddleLeft=function(){return"Hacia la posición media izquierda"},c.positionMiddleCenter=function(){return"Hacia la posición media central"},c.positionMiddleRight=function(){return"Hacia la posición media derecha"},c.positionBottomOutLeft=function(){return"a la posición inferior izquierda externa"},c.positionBottomLeft=function(){return"Hacia la posición inferior izquierda"},c.positionBottomCenter=function(){return"Hacia la posición inferior central"},c.positionBottomRight=function(){return"Hacia la posición inferior derecha"},c.positionBottomOutRight=function(){return"a la posición inferior derecha externa"},c.positionOutBottomLeft=function(){return"a la posición inferior izquierda"},c.positionOutBottomRight=function(){return"a la posición inferior derecha"},c.positionRandom=function(){return"Hacia una posición aleatoria"},c.projectileBlueFireball=function(){return"bola de fuego azul"},c.projectilePurpleFireball=function(){return"bola de fuego morada"},c.projectileRedFireball=function(){return"bola de fuego roja"},c.projectileYellowHearts=function(){return"corazones amarillos"},c.projectilePurpleHearts=function(){return"corazones morados"},c.projectileRedHearts=function(){return"corazones rojos"},c.projectileRandom=function(){return"aleatorio"},c.reinfFeedbackMsg=function(){return'Puedes pulsar el botón "Intentar de nuevo" para volver a jugar tu historia.'},c.repeatForever=function(){return"Repetir para siempre"},c.repeatDo=function(){return"Ejecutar"},c.repeatForeverTooltip=function(){return"Ejecutar las acciones de este bloque repetidamente mientras la historia se esté ejecutando."},c.saySprite=function(){return"decir"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" dice"},c.saySpriteTooltip=function(){return"Haz salir un bocadillo de diálogo con el texto asociado desde el actor especificado."},c.scoreText=function(a){return"Puntuación: "+v(a,"playerScore")},c.setBackground=function(){return"fijar fondo"},c.setBackgroundRandom=function(){return"Establecer fondo aleatorio"},c.setBackgroundBlack=function(){return"Establecer fondo negro"},c.setBackgroundCave=function(){return"Establecer fondo de cueva"},c.setBackgroundCloudy=function(){return"Establecer fondo nuboso"},c.setBackgroundHardcourt=function(){return"Establecer fondo de pista de asfalto o cemento"},c.setBackgroundNight=function(){return"Establecer fondo nocturno"},c.setBackgroundUnderwater=function(){return"Establecer fondo subaquático"},c.setBackgroundCity=function(){return"asignar el fondo de la ciudad"},c.setBackgroundDesert=function(){return"asignar el fondo del desierto"},c.setBackgroundRainbow=function(){return"asignar el fondo del arco iris"},c.setBackgroundSoccer=function(){return"asignar el fondo de fútbol"},c.setBackgroundSpace=function(){return"asignar el dondo del espacio"},c.setBackgroundTennis=function(){return"asignar el fondo de tenis"},c.setBackgroundWinter=function(){return"asignar el fondo de invierno"},c.setBackgroundTooltip=function(){return"Establece la imagen de fondo"},c.setScoreText=function(){return"Establece el puntaje"},c.setScoreTextTooltip=function(){return"Fija el texto que se va a mostrar en el área de puntaje."},c.setSpriteEmotionAngry=function(){return"enojado"},c.setSpriteEmotionHappy=function(){return"Feliz"},c.setSpriteEmotionNormal=function(){return"normal"},c.setSpriteEmotionRandom=function(){return"humor aleatorio"},c.setSpriteEmotionSad=function(){return"triste"},c.setSpriteEmotionTooltip=function(){return"Fija el estado de ánimo del actor"},c.setSpriteAlien=function(){return"a una imagen alienigena"},c.setSpriteBat=function(){return"a una imagen de un murcielago"},c.setSpriteBird=function(){return"a una imagen de un pajaro"},c.setSpriteCat=function(){return"a una imagen de un gato"},c.setSpriteCaveBoy=function(){return"a la imagen del niño de las cavernas"},c.setSpriteCaveGirl=function(){return"a la imagen de la niña de las cavernas"},c.setSpriteDinosaur=function(){return"a una imagen de un dinosaurio"},c.setSpriteDog=function(){return"a una imagen de un perro"},c.setSpriteDragon=function(){return"a una imagen de un dragón"},c.setSpriteGhost=function(){return"a una imagen de un fantasma"},c.setSpriteHidden=function(){return"a una imagen oculta"},c.setSpriteHideK1=function(){return"ocultar"},c.setSpriteKnight=function(){return"a la imagen de un caballero"},c.setSpriteMonster=function(){return"a la imagen de un monstruo"},c.setSpriteNinja=function(){return"a la imagen de un ninja enmascarado"},c.setSpriteOctopus=function(){return"a una imagen de un pulpo"},c.setSpritePenguin=function(){return"a la imagen de un pingüino"},c.setSpritePirate=function(){return"a la imagen de un pirata"},c.setSpritePrincess=function(){return"a la imagen de una princesa"},c.setSpriteRandom=function(){return"a una imagen al azar"},c.setSpriteRobot=function(){return"a la imagen de un robot"},c.setSpriteShowK1=function(){return"Mostrar"},c.setSpriteSpacebot=function(){return"a la imagen de un robot espacial"},c.setSpriteSoccerGirl=function(){return"a la imagen de una futbolista"},c.setSpriteSoccerBoy=function(){return"a la imagen de un futbolista"},c.setSpriteSquirrel=function(){return"a una imagen de una ardilla"},c.setSpriteTennisGirl=function(){return"a la imagen de una jugadora de tenis"},c.setSpriteTennisBoy=function(){return"a la imagen de un jugador de tenis"},c.setSpriteUnicorn=function(){return"a la imagen de un unicornio"},c.setSpriteWitch=function(){return"a una imagen de una bruja"},c.setSpriteWizard=function(){return"a una imagen de un mago"},c.setSpritePositionTooltip=function(){return"Mueve instantáneamente un actor a la posición especificada."},c.setSpriteK1Tooltip=function(){return"Muestra u oculta un actor específico."},c.setSpriteTooltip=function(){return"Fija la imagen del actor"},c.setSpriteSizeRandom=function(){return"a cualquier tamaño"},c.setSpriteSizeVerySmall=function(){return"a un tamaño muy pequeño"},c.setSpriteSizeSmall=function(){return"a un tamaño pequeño"},c.setSpriteSizeNormal=function(){return"a tamaño normal"},c.setSpriteSizeLarge=function(){return"a un gran tamaño"},c.setSpriteSizeVeryLarge=function(){return"a un enorme tamaño"},c.setSpriteSizeTooltip=function(){return"Pone el tamaño del actor"},c.setSpriteSpeedRandom=function(){return"a una velocidad al azar"},c.setSpriteSpeedVerySlow=function(){return"a una velocidad muy lenta"},c.setSpriteSpeedSlow=function(){return"a una velocidad lenta"},c.setSpriteSpeedNormal=function(){return"a una velocidad normal"},c.setSpriteSpeedFast=function(){return"a una velocidad rápida"},c.setSpriteSpeedVeryFast=function(){return"a una velocidad muy rápida"},c.setSpriteSpeedTooltip=function(){return"Ajusta la velocidad de un actor"},c.setSpriteZombie=function(){return"a la imagen de un zombie"},c.shareStudioTwitter=function(){return"Checa la historia que hice. La escribí yo mismo con @codeorg"},c.shareGame=function(){return"Comparte tu historia:"},c.showTitleScreen=function(){return"Mostrar la pantalla de título"},c.showTitleScreenTitle=function(){return"Título"},c.showTitleScreenText=function(){return"texto"},c.showTSDefTitle=function(){return"escribe el título aquí"},c.showTSDefText=function(){return"escriba el texto aquí"},c.showTitleScreenTooltip=function(){return"Muestra una pantalla con el título y texto asociados."},c.setSprite=function(){return"fijar"},c.setSpriteN=function(a){return"fijar actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"aplastar"},c.soundGoal1=function(){return"meta 1"},c.soundGoal2=function(){return"meta 2"},c.soundHit=function(){return"golpe"},c.soundLosePoint=function(){return"pierde punto"},c.soundLosePoint2=function(){return"pierde punto 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"liga"},c.soundSlap=function(){return"bofetada"},c.soundWinPoint=function(){return"punto ganador"},c.soundWinPoint2=function(){return"punto ganador 2"},c.soundWood=function(){return"madera"},c.speed=function(){return"velocidad"},c.stopSprite=function(){return"Parar"},c.stopSpriteN=function(a){return"detener actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Detener el movimiento del actor."},c.throwSprite=function(){return"Lanza"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" lanza"},c.throwTooltip=function(){return"Lanza un proyectil desde el actor especificado."},c.vanish=function(){return"desvanecer"},c.vanishActorN=function(a){return"desaparecer actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"desaparece el actor."},c.waitFor=function(){return"espera por"},c.waitSeconds=function(){return"segundos"},c.waitForClick=function(){return"espera un clic"},c.waitForRandom=function(){return"espera aleatoria"},c.waitForHalfSecond=function(){return"espera por medio segundo"},c.waitFor1Second=function(){return"espera por 1 segundo"},c.waitFor2Seconds=function(){return"espera por 2 segundos"},c.waitFor5Seconds=function(){return"espera por 5 segundos"},c.waitFor10Seconds=function(){return"espera por 10 segudos"},c.waitParamsTooltip=function(){return"Espera por un número específico de segundos, o usa cero para esperar hasta que ocurra un clic."},c.waitTooltip=function(){return"Espera por un periodo de tiempo determinado o hasta que ocurra un clic."},c.whenArrowDown=function(){return"flecha hacia abajo"},c.whenArrowLeft=function(){return"flecha izquierda"},c.whenArrowRight=function(){return"flecha derecha"},c.whenArrowUp=function(){return"flecha hacia arriba"},c.whenArrowTooltip=function(){return"Ejecutar las acciones mostradas debajo, cuando se presione la tecla de flecha especificada."},c.whenDown=function(){return"cuando la flecha apunte abajo"},c.whenDownTooltip=function(){return"Realiza las instrucciones de abajo cuando se presiona la tecla de fecha hacia abajo."},c.whenGameStarts=function(){return"cuando comience la historia"},c.whenGameStartsTooltip=function(){return"Ejecuta las acciones, mostradas abajo, cuando comienza la historia."},c.whenLeft=function(){return"Cuando la izquierda flecha"},c.whenLeftTooltip=function(){return"Ejecuta las acciones, mostradas abajo, cuando se presiona la tecla de flecha izquierda."},c.whenRight=function(){return"cuando la tecla flecha derecha"},c.whenRightTooltip=function(){return"Ejecuta las acciones, mostradas debajo, cuando la tecla de flecha derecha se presiona."},c.whenSpriteClicked=function(){return"cuando se hace clic en el actor"},c.whenSpriteClickedN=function(a){return"cuando se hace clic en el actor "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Ejecutar las acciones de debajo cuando se hace clic en un actor."},c.whenSpriteCollidedN=function(a){return"cuando el actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Ejecutar las acciones abajo cuando un actor toca otro actor."},c.whenSpriteCollidedWith=function(){return"toca"},c.whenSpriteCollidedWithN=function(a){return"toca el actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"toca la bola de fuego azul"},c.whenSpriteCollidedWithPurpleFireball=function(){return"toca la bola de fuego morada"},c.whenSpriteCollidedWithRedFireball=function(){return"toca la bola de fuego roja"},c.whenSpriteCollidedWithYellowHearts=function(){return"toca los corazones amarillos"},c.whenSpriteCollidedWithPurpleHearts=function(){return"toca los corazones morados"},c.whenSpriteCollidedWithRedHearts=function(){return"toca los corazones rojos"},c.whenSpriteCollidedWithBottomEdge=function(){return"toca la orilla inferior"},c.whenSpriteCollidedWithLeftEdge=function(){return"toca la orilla izquierda"},c.whenSpriteCollidedWithRightEdge=function(){return"toca la orilla derecha"},c.whenSpriteCollidedWithTopEdge=function(){return"toca la orilla superior"},c.whenUp=function(){return"Cuando flecha arriba"},c.whenUpTooltip=function(){return"Realiza las instrucciones de abajo cuando se presiona la tecla de fecha hacia arriba."},c.yes=function(){return"Sí"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/eu_es/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/eu_es/common":40,"../../locale/eu_es/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/eu_es/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/eu_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/eu_es/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/eu_es/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/eu_es/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/eu_es/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.eu=function(a){return 1===a?"one":"other"},c.and=function(){return"eta"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Ekintzak"},c.catColour=function(){return"Kolorea"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Zerrendak"},c.catLoops=function(){return"Itzuliak"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funtzioak"},c.catText=function(){return"Testua"},c.catVariables=function(){return"Aldagaiak"},c.codeTooltip=function(){return"Ikusi sortutako Javascript kodea."},c.continue=function(){return"Jarraitu"},c.dialogCancel=function(){return"Ezeztatu"},c.dialogOK=function(){return"Ongi"},c.directionNorthLetter=function(){return"I"},c.directionSouthLetter=function(){return"H"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"M"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"Errepikatu" edo "baldintza" blokeak barruan beste bloke batzuk behar ditu funtzionatzeko. Egiaztatu barruko blokeak egoki kokatuak daudela.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Ekintza blokeei lotu gabeko blokeak soberan daude."},c.finalStage=function(){return"Zorionak! Azkeneko eszenatokia osatu duzu."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"eu",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Goi mailako unibertsitateek (adib., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+" ) ere blokeetan oinarritutako kodeketa irakasten dute. Baina zuk erabilitako blokeen azpian munduan zehar erabilera zabalen duen kode hizkuntza dago, JavaScript:"},c.hashError=function(){return"Barkatu. %1 ez dator bat inongo gordetako programarekin."},c.help=function(){return"Laguntza"},c.hintTitle=function(){return"Aholkua:"},c.jump=function(){return"salto egin"},c.levelIncompleteError=function(){return"Beharrezko diren kode mota guztiak erabiltzen ari zara baina ez modu egokian."},c.listVariable=function(){return"zerrenda"},c.makeYourOwnFlappy=function(){return"Egin zure Flappy joko propioa"},c.missingBlocksErrorMsg=function(){return"Probatu azpiko bloke bat edo gehiago pule hau ebazteko."},c.nextLevel=function(a){return"Zorionak! "+v(a,"puzzleNumber")+" puzlea osatu duzu."},c.nextLevelTrophies=function(a){return"Zorionak! "+v(a,"puzzleNumber")+" puzlea osatu duzu eta "+p(a,"numTrophies",0,"eu",{one:"garaikur 1",other:n(a,"numTrophies")+" garaikur"})+" irabazi dituzu."},c.nextStage=function(a){return"Zorionak! "+v(a,"stageName")+" osatu duzu."},c.nextStageTrophies=function(a){return"Zorionak! "+v(a,"stageName")+" osatu duzu eta "+p(a,"numTrophies",0,"eu",{one:"garaikur 1",other:n(a,"numTrophies")+" garaikur"})+" irabazi dituzu." },c.numBlocksNeeded=function(a){return"Zorionak! "+v(a,"puzzleNumber")+". puzlea osatu dizu. (Hala ere "+p(a,"numBlocks",0,"eu",{one:"bloke 1",other:n(a,"numBlocks")+" bloke"})+" erabili ahal zenituen."},c.numLinesOfCodeWritten=function(a){return" "+p(a,"numLines",0,"eu",{one:"lerro 1",other:n(a,"numLines")+" lerro"})+" kode idatzi berri dituzu!\n"},c.play=function(){return"play"},c.puzzleTitle=function(a){return v(a,"stage_total")+"etik, "+v(a,"puzzle_number")+" puzlea"},c.repeat=function(){return"errepikatu"},c.resetProgram=function(){return"Leheneratu"},c.runProgram=function(){return"Abiarazi"},c.runTooltip=function(){return"Lan eremuko blokeek definitutako programa abiarazi."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Ikusi Iturburua"},c.showGeneratedCode=function(){return"Ikusi iturburua"},c.subtitle=function(){return"programazio ingurune bisuala"},c.textVariable=function(){return"testua"},c.tooFewBlocksMsg=function(){return"Beharrezko bloke mota guztiak erabiltzen ari zara, baina saiatu mota hontako bloke gehiago erabiltzen puzlea osatzeko."},c.tooManyBlocksMsg=function(){return"Puzlea hau blokeekin ebaz daiteke."},c.tooMuchWork=function(){return"Lan asko eginarazi didazu! Saiatu zaitezke gutxiagotan errepikatzen?"},c.toolboxHeader=function(){return"Blokeak"},c.openWorkspace=function(){return"Nola dabilen"},c.totalNumLinesOfCodeWritten=function(a){return"Guztira: "+p(a,"numLines",0,"eu",{one:"kode lerro 1",other:n(a,"numLines")+" lerro kode"})+"."},c.tryAgain=function(){return"Saiatu berriro"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Atzera aurreko mailara"},c.saveToGallery=function(){return"Gorde zure galerian"},c.savedToGallery=function(){return"Zure galerian gordeta!"},c.typeCode=function(){return"Idatzi zure JavaScript kodea argibide hauen azpian."},c.typeFuncs=function(){return"Funtzioa erabilgarriak:%1"},c.typeHint=function(){return"Kontuan hartu parentesiak eta puntu eta komak beharrezkoak direla."},c.workspaceHeader=function(){return"Mihiztatu zure blokeak hemen: "},c.infinity=function(){return"Infinito"},c.rotateText=function(){return"Biratu zure gailua."},c.orientationLock=function(){return"Itzali orientazio lokatzea gailuaren aukeretan."},c.wantToLearn=function(){return"Kodetzen ikasi nahi?"},c.watchVideo=function(){return"Ikusi Bideoa"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Probatu Kode Ordua"},c.signup=function(){return"Izena eman sarrera kurtsorako"},c.hintHeader=function(){return"Hemen aholkua:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.eu=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Ekintzak"},c.catControl=function(){return"Itzuliak"},c.catEvents=function(){return"Gertaerak"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funtzioak"},c.catText=function(){return"Testua"},c.catVariables=function(){return"Aldagaiak"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Jarraitu"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"idatzi hemen"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Zorionak! Amaierako puzlea ebatzi duzu."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Egin zure istorio propioa"},c.moveDirectionDown=function(){return"behera"},c.moveDirectionLeft=function(){return"ezkerra"},c.moveDirectionRight=function(){return"eskuina"},c.moveDirectionUp=function(){return"gora"},c.moveDirectionRandom=function(){return"ausazkoa"},c.moveDistance25=function(){return"25 pixel"},c.moveDistance50=function(){return"50 pixel"},c.moveDistance100=function(){return"100 pixel"},c.moveDistance200=function(){return"200 pixel"},c.moveDistance400=function(){return"400 pixel"},c.moveDistancePixels=function(){return"Pixelak"},c.moveDistanceRandom=function(){return"ausazko pixelak"},c.moveDistanceTooltip=function(){return"Mugitu aktorea distantzia zehatz batean eta norabide zehatzean."},c.moveSprite=function(){return"mugitu"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"mugiru behera"},c.moveDownTooltip=function(){return"Mugitu aktore bat behera."},c.moveLeft=function(){return"mugitu ezkerrera"},c.moveLeftTooltip=function(){return"mugitu aktore bat ezkerrera."},c.moveRight=function(){return"mugitu eskuinera"},c.moveRightTooltip=function(){return"Mugitu aktore bat eskuinera."},c.moveUp=function(){return"Mugitu gora"},c.moveUpTooltip=function(){return"Mugitu aktore bat gora."},c.moveTooltip=function(){return"Mugitu aktore bat."},c.nextLevel=function(){return"Zorionak! Puzle hau osatu duzu."},c.no=function(){return"Ez"},c.numBlocksNeeded=function(){return"Puzle hau %1 blokeekin ebaz daiteke."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"jo karraska soinua"},c.playSoundGoal1=function(){return"jo 1 gol soinua"},c.playSoundGoal2=function(){return"jo 2 gol soinua"},c.playSoundHit=function(){return"jo kolpe soinua"},c.playSoundLosePoint=function(){return"jo galdutako puntuaren soinua"},c.playSoundLosePoint2=function(){return"jo galdutako 2 puntuaren soinua"},c.playSoundRetro=function(){return"jo retro soinua"},c.playSoundRubber=function(){return"jo borragoma soinua"},c.playSoundSlap=function(){return"jo zaplasteko soinua"},c.playSoundTooltip=function(){return"Jo aukeratutako soinua."},c.playSoundWinPoint=function(){return"jo puntu irabazle soinua"},c.playSoundWinPoint2=function(){return"jo puntu irabazle soinua 2"},c.playSoundWood=function(){return"jo egur soinua"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"joan goi ezkerreko posiziora"},c.positionTopCenter=function(){return"goi erdiko posiziora"},c.positionTopRight=function(){return"goi eskuineko posiziora"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"erdiko ezkerreko posiziora"},c.positionMiddleCenter=function(){return"erdiko zentroko posiziora"},c.positionMiddleRight=function(){return"erdiko eskuineko posiziora"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"beheko ezkerreko posiziora"},c.positionBottomCenter=function(){return"behko zentroko posiziora"},c.positionBottomRight=function(){return"beheko eskuineko posiziora"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"ausazko posiziora"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"ausazkoa"},c.reinfFeedbackMsg=function(){return'"Berriro saiatu" botoiean klikatu dezakezu zure istorioa atzera egiteko.'},c.repeatForever=function(){return"errepikatu betirako"},c.repeatDo=function(){return"egin"},c.repeatForeverTooltip=function(){return"Exekutatu blokeko ekintzak etengabe istorioa martxan dagoen bitartean."},c.saySprite=function(){return"esan"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Zehaztutako aktoretik bokadiloa atera lotutako testuarekin."},c.scoreText=function(a){return"Markagailua: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"ezarri ausazko atzeko planoa"},c.setBackgroundBlack=function(){return"ezarri atzekalde beltza"},c.setBackgroundCave=function(){return"ezarri haitzulo atzekaldea"},c.setBackgroundCloudy=function(){return"ezarri atzekalde hodeitsua"},c.setBackgroundHardcourt=function(){return"ezarri zoru gogorreko atzekaldea"},c.setBackgroundNight=function(){return"ezarri gaueko atzekaldea"},c.setBackgroundUnderwater=function(){return"ezarri ur azpiko atzeko planoa"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Atzeko irudia ezartzen du"},c.setScoreText=function(){return"ezarri markagailua"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"ezkutuko irudira"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"ausazko irudi batera"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"sorgin irudi batera"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Toki zehatz batera aktorea berehala mugitzen du."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Aktorearen irudia ezartzen du"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"ausazko abiadura batera"},c.setSpriteSpeedVerySlow=function(){return"abiadura oso motel batera"},c.setSpriteSpeedSlow=function(){return"abiadura motel batera"},c.setSpriteSpeedNormal=function(){return"abiadura normal batera"},c.setSpriteSpeedFast=function(){return"abiadura azkar batera"},c.setSpriteSpeedVeryFast=function(){return"abiadura oso azkar batera"},c.setSpriteSpeedTooltip=function(){return"Aktore baten abiadura ezartzen du"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Ikusi egin dudan istorioa. @codeorg-ekin idatzi dut nik bakarrik"},c.shareGame=function(){return"Partekatu zure istorioa:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"testua"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"ezarri"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"geratu"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Aktore baten mugimendua geratzen du."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"itxoin klikatzea"},c.waitForRandom=function(){return"itxoin ausazkoa"},c.waitForHalfSecond=function(){return"itxoin segundu erdia"},c.waitFor1Second=function(){return"itxoin segundu 1"},c.waitFor2Seconds=function(){return"itxoin 2 segundu"},c.waitFor5Seconds=function(){return"itxoin 5 segundu"},c.waitFor10Seconds=function(){return"itxoin 10 segundu"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Klikatzea edo denbora kopuru zehatz bat itxoiten ditu."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"beheko gezia sakatzean"},c.whenDownTooltip=function(){return"Exekutatu behekaldeko ekintzak beheko gezidun tekla sakatzean."},c.whenGameStarts=function(){return"isotorioa hasten denean"},c.whenGameStartsTooltip=function(){return"Exekutatu beheko ekintzak istorioa hasten denean."},c.whenLeft=function(){return"ezkerreko gezia sakatzean"},c.whenLeftTooltip=function(){return"Exekutatu behekaldeko ekintzak ezkerreko gezidun tekla sakatzean."},c.whenRight=function(){return"eskuineko gezia sakatzean"},c.whenRightTooltip=function(){return"Exekutatu behekaldeko ekintzak eskubiko gezidun tekla sakatzean."},c.whenSpriteClicked=function(){return"aktorea klikatzean"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Aktorea klikatzen denean ekintza hauek exekutatu."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Exekutatu beheko ekintzak aktore batek beste bat ikutzen duenean."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"goiko gezia denean"},c.whenUpTooltip=function(){return"Exekutatu behekaldeko ekintzak gora gezidun tekla sakatzean."},c.yes=function(){return"Bai"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/fa_ir/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/fa_ir/common":40,"../../locale/fa_ir/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/fa_ir/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/fa_ir/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/fa_ir/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/fa_ir/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fa_ir/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fa_ir/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.fa=function(){return"other"},c.and=function(){return"و"},c.blocklyMessage=function(){return"بلاکلی"},c.catActions=function(){return"کارها"},c.catColour=function(){return"رنگ"},c.catLogic=function(){return"منطق"},c.catLists=function(){return"لیست ها"},c.catLoops=function(){return"حلقه‌ها"},c.catMath=function(){return"ریاضی"},c.catProcedures=function(){return"توابع"},c.catText=function(){return"متن"},c.catVariables=function(){return"متغیرها"},c.codeTooltip=function(){return"کد جاوا اسکریپت تولید شده رو ببین."},c.continue=function(){return"ادامه"},c.dialogCancel=function(){return"لغو"},c.dialogOK=function(){return"Ok"},c.directionNorthLetter=function(){return"شمال"},c.directionSouthLetter=function(){return"جنوب"},c.directionEastLetter=function(){return"شرق"},c.directionWestLetter=function(){return"غرب"},c.end=function(){return"پایان"},c.emptyBlocksErrorMsg=function(){return'بلوک های "تکرار" (Repeat) یا "شرطی" (If) برای کار کردن، نیاز به بلوکهای دیگری در داخل خود دارند. مطمئن شوید که بلوک داخلی، به درستی درون بلوک اصلی قرار گرفته است.'},c.emptyFunctionBlocksErrorMsg=function(){return"بلوک تابع برای به کار افتادن نیاز دارد، که بلوک های دیگری در داخل خود داشته باشد."},c.extraTopBlocks=function(){return"شما بلوک های اضافه ای دارید که به یک بلوک رویداد متصل نیست."},c.finalStage=function(){return"تبریک می‌گوییم! شما مرحله‌ی نهایی را به پایان رساندید."},c.finalStageTrophies=function(a){return"تبریک می‌گوییم! شما مرحله‌ی آخر را به پایان رساندید و برنده‌ی "+p(a,"numTrophies",0,"fa",{one:"یک جایزه",other:n(a,"numTrophies")+" جایزه"})+" شدید."},c.finish=function(){return"پایان"},c.generatedCodeInfo=function(a){return"دانشگاههای برتر نیز کدنویسی بر اساس بلوک ها را آموزش می دهند (مثل "+v(a,"berkeleyLink")+" و "+v(a,"harvardLink")+"). اما در پشت پرده، بلوک هایی که شما سر هم کرده اید را می توان به زبان جاوا اسکریپت نشان داد، که پر استفاده ترین زبان کدنویسی در دنیاست:"},c.hashError=function(){return"با عرض پوزش، '%1' با هیچ کدام از برنامه‌های ذخیره شده مطابقت ندارد."},c.help=function(){return"راهنما"},c.hintTitle=function(){return"راهنمایی:"},c.jump=function(){return"پرش"},c.levelIncompleteError=function(){return"شما همه‌ی بلوک‌های مورد نیاز را بکار بردید، ولی نه به روش درست."},c.listVariable=function(){return"لیست"},c.makeYourOwnFlappy=function(){return"Flappy Bird خودتان را بسازید"},c.missingBlocksErrorMsg=function(){return"برای حل این معما، یکی یا چند تا از بلوک‌های زیر را بکار ببرید."},c.nextLevel=function(a){return"تبریک ! شما پازل "+v(a,"puzzleNumber")+" را به پایان رساندید."},c.nextLevelTrophies=function(a){return"تبریک می‌گوییم! شما معمای "+v(a,"puzzleNumber")+" را به پایان رساندید و برنده‌ی "+p(a,"numTrophies",0,"fa",{one:"یک جایزه",other:n(a,"numTrophies")+" جایزه"})+" شدید."},c.nextStage=function(a){return"تبریک! شما "+v(a,"stageName")+" را به پایان رساندید."},c.nextStageTrophies=function(a){return"تبریک! شما مرحله‌ی "+v(a,"stageName")+" را به پایان رساندید و برنده‌ی "+p(a,"numTrophies",0,"fa",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" شدید." },c.numBlocksNeeded=function(a){return"تبریک می‌گوییم! شما معمای "+v(a,"puzzleNumber")+" را به پایان رساندید. (اگرچه می‌توانستید تنها "+p(a,"numBlocks",0,"fa",{one:"یک بلوک",other:n(a,"numBlocks")+" بلوک"})+" بکار ببرید.)"},c.numLinesOfCodeWritten=function(a){return"شما "+p(a,"numLines",0,"fa",{one:"یک خط",other:n(a,"numLines")+" خط"})+" کد نوشتید!"},c.play=function(){return"بازی"},c.puzzleTitle=function(a){return"معمای "+v(a,"puzzle_number")+" از "+v(a,"stage_total")},c.repeat=function(){return"تکرار"},c.resetProgram=function(){return"بازنشانی"},c.runProgram=function(){return"اجرا"},c.runTooltip=function(){return"اجرای برنامه‌ی تعریف شده با بلوک‌های فضای کار."},c.score=function(){return"نمره"},c.showCodeHeader=function(){return"نمایشِ کد"},c.showGeneratedCode=function(){return"نمایشِ کد"},c.subtitle=function(){return"یک محیط برنامه نویسیِ دیداری"},c.textVariable=function(){return"متن"},c.tooFewBlocksMsg=function(){return"شما همه‌ی بلوک‌های مورد نیاز را بکار بردید، ولی برای حل این معما باید تعداد بیشتری از این بلوک‌ها را بکار ببرید."},c.tooManyBlocksMsg=function(){return"این معما را می‌توان با بلوک حل کرد."},c.tooMuchWork=function(){return"شما منو مجبور به انجام مقدار زیادی کار کردید. میشه تعداد تکرار رو کمتر کنید؟"},c.toolboxHeader=function(){return"بلوک‌ها"},c.openWorkspace=function(){return"چگونگیِ کار"},c.totalNumLinesOfCodeWritten=function(a){return"در مجموع: "+p(a,"numLines",0,"fa",{one:"یک خط",other:n(a,"numLines")+" خط"})+" کد."},c.tryAgain=function(){return"دوباره تلاش کنید"},c.hintRequest=function(){return"تذکر را ببینید"},c.backToPreviousLevel=function(){return"برگرد به سطح قبلی"},c.saveToGallery=function(){return"ذخیره در گالری شما"},c.savedToGallery=function(){return"در گالری شما ذخیره شد!"},c.typeCode=function(){return"در زیر این دستورات کد جاوا اسکریپتِ خودت رو بنویس."},c.typeFuncs=function(){return"توابع قابل استفاده: %1"},c.typeHint=function(){return"توجه کن که علامت‌های پرانتز و نقطه‌ویرگول لازم هستن."},c.workspaceHeader=function(){return"بلوک‌های خودت رو اینجا سرهم کن: "},c.infinity=function(){return"بی نهایت"},c.rotateText=function(){return"بچرخان دستگاه خود را."},c.orientationLock=function(){return"حالت افقی را در تنظیمات دستگاه خاموش کنید."},c.wantToLearn=function(){return"می‌خواید کد نویسی را یاد بگیرید؟"},c.watchVideo=function(){return"ویدیو را ببینید"},c.when=function(){return"وقتی"},c.whenRun=function(){return"هنگامی که اجرا"},c.tryHOC=function(){return"ساعتِ کد نویسی را امتحان کنید"},c.signup=function(){return"برای دوره‌ی مقدماتی نام نویسی کنید"},c.hintHeader=function(){return"نکته اینجاست:"},c.genericFeedback=function(){return"ببینبد چطور تمامش کردید,و سعی به رفع مشکلات برنامه خود کنید."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.fa=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"عملیات"},c.catControl=function(){return"حلقه‌ها"},c.catEvents=function(){return"رویدادها"},c.catLogic=function(){return"منطق"},c.catMath=function(){return"حساب"},c.catProcedures=function(){return"توابع"},c.catText=function(){return"متن"},c.catVariables=function(){return"متغیرها"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"ادامه"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"ایجا تایپ کن"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"تبریک میگم . معمای نهایی رو حل کردی ."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"نمره امتیاز"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"داستان خودتو بساز"},c.moveDirectionDown=function(){return"پایین"},c.moveDirectionLeft=function(){return"سمت چپ"},c.moveDirectionRight=function(){return"سمت راست"},c.moveDirectionUp=function(){return"بالا"},c.moveDirectionRandom=function(){return"تصادفی"},c.moveDistance25=function(){return"۲۰ پیکسل"},c.moveDistance50=function(){return"۵۰ پیکسل"},c.moveDistance100=function(){return"۱۰۰ پیکسل"},c.moveDistance200=function(){return"۲۰۰ پیکسل"},c.moveDistance400=function(){return"۴۰۰ پیکسل"},c.moveDistancePixels=function(){return"پیکسل"},c.moveDistanceRandom=function(){return"پیکسل های تصادفی"},c.moveDistanceTooltip=function(){return"یک بازیگر رو در جهت خاص به فاصله خاصی حرکت بده ."},c.moveSprite=function(){return"حرکت"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"برو پایین"},c.moveDownTooltip=function(){return"یک بازیگر رو پایین ببر ."},c.moveLeft=function(){return"برو به چپ"},c.moveLeftTooltip=function(){return"یک بازیگر رو به چپ ببر ."},c.moveRight=function(){return"برو به راست"},c.moveRightTooltip=function(){return"یک بازیگر رو به راست ببر ."},c.moveUp=function(){return"برو بالا"},c.moveUpTooltip=function(){return"یک بازیگر رو بالا ببر ."},c.moveTooltip=function(){return"یک بازیگر رو حرکت بده ."},c.nextLevel=function(){return"تبریک میگم . این پازل رو کامل کردید ."},c.no=function(){return"خیر"},c.numBlocksNeeded=function(){return"این پازل می تواند با 1% بلوکها حل شود."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"پخش صدای خرد شدن"},c.playSoundGoal1=function(){return"پخش صدای هدف 1"},c.playSoundGoal2=function(){return"پخش صدای هدف 2"},c.playSoundHit=function(){return"پخش صدای ضربه"},c.playSoundLosePoint=function(){return"پخش صدای از دست دادن امتیاز"},c.playSoundLosePoint2=function(){return"پخش صدای از دست دادن امتیاز 2"},c.playSoundRetro=function(){return"پخش صدای سبک قدیمی"},c.playSoundRubber=function(){return"پخش صدای کش لاستیکی"},c.playSoundSlap=function(){return"پخش صدای ضربه با دست"},c.playSoundTooltip=function(){return"صدای انتخاب شده را پخش می‌کند."},c.playSoundWinPoint=function(){return"پخش صدای کسب امتیاز"},c.playSoundWinPoint2=function(){return"پخش صدای کسب امتیاز 2"},c.playSoundWood=function(){return"پخش کردن صدای چوب"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"به موقعیت بالا سمت چپ"},c.positionTopCenter=function(){return"به موقعیت وسط در بالا"},c.positionTopRight=function(){return"به موقعیت بالا سمت راست"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"به موقعیت وسط سمت چپ"},c.positionMiddleCenter=function(){return"به موقعیت وسط"},c.positionMiddleRight=function(){return"به موقعیت وسط سمت راست"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"به موقعیت پایین سمت چپ"},c.positionBottomCenter=function(){return"به موقعیت وسط در پایین"},c.positionBottomRight=function(){return"به موقعیت پایین سمت راست"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"به موقعیت تصادفی"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"تصادفی"},c.reinfFeedbackMsg=function(){return'شما می توانید دکمه "دوباره امتحان کنید" را بفشارید تا به بازیتان برگردید.'},c.repeatForever=function(){return"تکرار بی‌پایان"},c.repeatDo=function(){return"انجام دادن"},c.repeatForeverTooltip=function(){return"اجرای عملیات داخل این بلوک بطور مکرر تا زمانی که داستان ادامه دارد."},c.saySprite=function(){return"گفتن"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"نمایش یک بیان صحبت با متن مربوطه از طرف بازیگر مشخص شده."},c.scoreText=function(a){return"امتیاز: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"قراردادن زمینه تصادفی"},c.setBackgroundBlack=function(){return"قراردادن زمینه سیاه"},c.setBackgroundCave=function(){return"قراردادن زمینه غار"},c.setBackgroundCloudy=function(){return"قراردادن زمینه ابری"},c.setBackgroundHardcourt=function(){return"قراردادن زمینه زمخت"},c.setBackgroundNight=function(){return"قراردادن زمینه شب"},c.setBackgroundUnderwater=function(){return"قراردادن زمینه زیرآبی"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"تعیین تصویر پس‌زمینه"},c.setScoreText=function(){return"تنظیم امتیاز"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"به یک تصویر مخفی"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"به یک تصویر تصادفی"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"به تصویر جادوگر"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"بلافاصله بازیگر را به موقعیت مشخص شده حرکت می‌دهد."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"تعیین تصویر بازیگر"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"به یک سرعت تصادفی"},c.setSpriteSpeedVerySlow=function(){return"به سرعت خیلی آهسته"},c.setSpriteSpeedSlow=function(){return"به سرعت آهسته"},c.setSpriteSpeedNormal=function(){return"به سرعت معمولی"},c.setSpriteSpeedFast=function(){return"به سرعت سریع"},c.setSpriteSpeedVeryFast=function(){return"به سرعت خیلی سریع"},c.setSpriteSpeedTooltip=function(){return"تعیین سرعت یک بازیگر"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"داستانی که ساخته‌ام را ببین. من خودم آن را با @codeorg نوشته‌ام"},c.shareGame=function(){return"داستانت را به اشتراک بگذار:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"متن"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"مجموعه"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"اجرای عملیات زیر هنگام کلیک روی یک بازیگر."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"اجرای عملیات زیر هنگامیکه یک بازیگر به بازیگر دیگری می‌زسد."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"هنگام زدن جهت بالا"},c.whenUpTooltip=function(){return"اجرای عملیات زیر هنگامیکه کلید جهت بالا زده می‌شود."},c.yes=function(){return"بله"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j]; if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/fi_fi/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/fi_fi/common":40,"../../locale/fi_fi/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/fi_fi/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/fi_fi/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/fi_fi/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/fi_fi/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fi_fi/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fi_fi/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.fi=function(a){return 1===a?"one":"other"},c.and=function(){return"ja"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Toiminnot"},c.catColour=function(){return"Väri"},c.catLogic=function(){return"Logiikka"},c.catLists=function(){return"Listat"},c.catLoops=function(){return"Silmukat"},c.catMath=function(){return"Matematiikka"},c.catProcedures=function(){return"Funktiot"},c.catText=function(){return"Teksti"},c.catVariables=function(){return"Muuttujat"},c.codeTooltip=function(){return"Näytä tuotettu JavaScript-koodi."},c.continue=function(){return"Jatka"},c.dialogCancel=function(){return"Peru"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"P"},c.directionSouthLetter=function(){return"E"},c.directionEastLetter=function(){return"I"},c.directionWestLetter=function(){return"L"},c.end=function(){return"loppu"},c.emptyBlocksErrorMsg=function(){return'"Toista" ja "Jos"-lohkot tarvitsevat toisen lohkon sisäänsä toimiakseen. Varmista, että sisempi lohko asettuu oikein ulompaan lohkoon.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Sinulla on ylimääräisiä lohkoja, joita ei ole kytketty tapahtumalohkoon."},c.finalStage=function(){return"Onneksi olkoon! Olet suorittanut viimeisen vaiheen."},c.finalStageTrophies=function(a){return"Onneksi olkoon! Olet suorittanut viimeisen vaiheen ja voittanut "+p(a,"numTrophies",0,"fi",{one:"pokaalin",other:n(a,"numTrophies")+" pokaalia"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Jopa huippuyliopistot opettavat lohkopohjaista ohjelmointia (esim., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"), mutta konepellin alla kokoamasi lohkot voidaan näyttää myös esim. JavaScript-kielellä. JavaScript on maailman eniten käytetty ohjelmointikieli:"},c.hashError=function(){return"Valitan, '%1' ei vastaa mitään tallennettua ohjelmaa."},c.help=function(){return"Ohje"},c.hintTitle=function(){return"Vihje:"},c.jump=function(){return"hyppää"},c.levelIncompleteError=function(){return"Käytät kaikkia oikeanlaisia lohkoja, mutta et oikella tavalla."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Tee oma Läpytin -pelisi"},c.missingBlocksErrorMsg=function(){return"Yritä ratkaista pulma yhdellä tai useammalla alla olevalla lohkolla."},c.nextLevel=function(a){return"Onneksi olkoon! Olet suorittanut "+v(a,"puzzleNumber")+". pulman."},c.nextLevelTrophies=function(a){return"Onneksi olkoon! Olet suorittanut "+v(a,"puzzleNumber")+". pulman ja voittanut "+p(a,"numTrophies",0,"fi",{one:"pokaalin",other:n(a,"numTrophies")+" pokaalia"})+"."},c.nextStage=function(a){return"Onnittelut! Olet suorittanut "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Onnittelut! Olet suorittanut "+v(a,"stageName")+" ja voitit "+p(a,"numTrophies",0,"fi",{one:"pokaalin",other:n(a,"numTrophies")+" pokaalia"})+"." },c.numBlocksNeeded=function(a){return"Onneksi olkoon! Olet suorittanut "+v(a,"puzzleNumber")+". pulman (olisit tosin voinut käyttää vain "+p(a,"numBlocks",0,"fi",{one:"yhden lohkon",other:n(a,"numBlocks")+" lohkoa"})+")."},c.numLinesOfCodeWritten=function(a){return"Kirjoitit juuri "+p(a,"numLines",0,"fi",{one:"yhden rivin",other:n(a,"numLines")+" riviä"})+" koodia!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Pulma "+v(a,"puzzle_number")+" / "+v(a,"stage_total")},c.repeat=function(){return"toista"},c.resetProgram=function(){return"Alusta"},c.runProgram=function(){return"Suorita"},c.runTooltip=function(){return"Suorittaa työtilassa olevien lohkojen määrittämän ohjelman."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Näytä koodi"},c.showGeneratedCode=function(){return"Näytä koodi"},c.subtitle=function(){return"visuaalinen ohjelmointiympäristö"},c.textVariable=function(){return"teksti"},c.tooFewBlocksMsg=function(){return"Käytät kyllä kaikkia oikeanlaisia lohkoja, mutta yritä käyttää niitä lisää, jotta saat pulman ratkaistua."},c.tooManyBlocksMsg=function(){return"Tämän pulman voi ratkaista lohkolla."},c.tooMuchWork=function(){return"Sait minut tekemään paljon töitä! Voisitko kokeilla samaa vähemmillä toistoilla?"},c.toolboxHeader=function(){return"Lohkot"},c.openWorkspace=function(){return"Miten se toimii"},c.totalNumLinesOfCodeWritten=function(a){return"Kokonaismäärä: "+p(a,"numLines",0,"fi",{one:"yksi rivi",other:n(a,"numLines")+" riviä"})+" koodia."},c.tryAgain=function(){return"Yritä uudestaan"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Takaisin edelliseen tasoon"},c.saveToGallery=function(){return"Tallenna galleriaasi"},c.savedToGallery=function(){return"Tallennettu galleriaasi!"},c.typeCode=function(){return"Kirjoita JavaScript-koodisi näiden ohjeiden alle."},c.typeFuncs=function(){return"Käytettävissä olevat funktiot: %1"},c.typeHint=function(){return"Sulkeet ja puolipisteet ovat pakollisia."},c.workspaceHeader=function(){return"Kokoa lohkosi täällä: "},c.infinity=function(){return"Ääretön"},c.rotateText=function(){return"Käännä laitettasi."},c.orientationLock=function(){return"Poista laitteesi asentolukko."},c.wantToLearn=function(){return"Haluatko oppia koodaamaan?"},c.watchVideo=function(){return"Katso Video"},c.when=function(){return"kun"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Kokeile koodaustuntia"},c.signup=function(){return"Rekisteröidy johdantokurssille"},c.hintHeader=function(){return"Tässä on Vihje:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.fi=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Toiminnot"},c.catControl=function(){return"Silmukat"},c.catEvents=function(){return"Tapahtumat"},c.catLogic=function(){return"Logiikka"},c.catMath=function(){return"Matematiikka"},c.catProcedures=function(){return"Funktiot"},c.catText=function(){return"Teksti"},c.catVariables=function(){return"Muuttujat"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Jatka"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"kirjoita tähän"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Onneksi olkoon! Olet suorittanut viimeisen pulman."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"kadota"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Tee oma tarinasi"},c.moveDirectionDown=function(){return"alas"},c.moveDirectionLeft=function(){return"vasemmalle"},c.moveDirectionRight=function(){return"oikealle"},c.moveDirectionUp=function(){return"ylös"},c.moveDirectionRandom=function(){return"satunnainen"},c.moveDistance25=function(){return"25 pikseliä"},c.moveDistance50=function(){return"50 pikseliä"},c.moveDistance100=function(){return"100 pikseliä"},c.moveDistance200=function(){return"200 pikseliä"},c.moveDistance400=function(){return"400 pikseliä"},c.moveDistancePixels=function(){return"pikseliä"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"siirrä"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"siirrä alas"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"siirrä vasemmalle"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"siirrä oikealle"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"siirrä ylös"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Onneksi olkoon! Olet suorittanut tämän pulman."},c.no=function(){return"Ei"},c.numBlocksNeeded=function(){return"Pulman voi ratkaista %1 lohkolla."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"satunnainen"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"tee"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Pisteet: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Aseta taustakuva"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"teksti"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"aseta"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Kyllä"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/fil_ph/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/fil_ph/common":40,"../../locale/fil_ph/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/fil_ph/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/fil_ph/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/fil_ph/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/fil_ph/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fil_ph/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fil_ph/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.fil=function(a){return 0===a||1==a?"one":"other"},c.and=function(){return"at"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Mga aksyon"},c.catColour=function(){return"Kulay"},c.catLogic=function(){return"Lohika"},c.catLists=function(){return"Mga listahan"},c.catLoops=function(){return"Mga loop"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Mga function"},c.catText=function(){return"Text"},c.catVariables=function(){return"Mga variable"},c.codeTooltip=function(){return"Tingnan ang nabuo na JavaScripy code."},c.continue=function(){return"Magpatuloy"},c.dialogCancel=function(){return"Kanselahin"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Ang "Repeat" o "if" block ay kailangan ng iba pang mga block sa loob nito upang gumana. Siguraduhin na ang block na asa loob ay nakasukat ng maayos sa loob ng naglalaman na block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Meron kang extra na mga block na hindi nakasama sa event block."},c.finalStage=function(){return"Maligayang pagbati! Natapos mo na ang pinakahuling stage."},c.finalStageTrophies=function(a){return"Maligayang pagbati! Nakumpleto mo na ang pinakahuling stage at nanalo ng "+p(a,"numTrophies",0,"fil",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Kahit ang mga nangungunang mga unibersidad ay nagtuturo ng block-based na coding (eg, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ngunit sa ilalim nito, ang mga bloke na iyong binuo ay maaari ring ipakita sa JavaScript, pinaka-tinatanggap na mga wika coding ng mundo:"},c.hashError=function(){return"Pasensya, '%1' ay walang katumbas sa mga na save na program."},c.help=function(){return"Tulong"},c.hintTitle=function(){return"Pahiwatig:"},c.jump=function(){return"talon"},c.levelIncompleteError=function(){return"Ginagamit mo ang lahat ng kinakailangang mga uri ng mga bloke ngunit hindi sa tamang paraan."},c.listVariable=function(){return"list"},c.makeYourOwnFlappy=function(){return"Gumawa Ng Sarili Mong Flappy Game"},c.missingBlocksErrorMsg=function(){return"Subukan ang isa o higit pa sa mga bloke sa ibaba upang malutas itong palaisipan."},c.nextLevel=function(a){return"Maligayang bati! Natapos mo ang Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Maligayang bati! Nakumpleto mo ang Puzzle "+v(a,"puzzleNumber")+" at nanalo ng "+p(a,"numTrophies",0,"fil",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.nextStage=function(a){return"Maligayang bati! Nakumpleto mo ang "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Maligayang bati! Natapos mo ang "+v(a,"stageName")+" at nanalo ng "+p(a,"numTrophies",0,"fil",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Maligayang bati! Nakumpleto mo ang Puzzle "+v(a,"puzzleNumber")+". (Subalit, maaari mo sanang gamitin lamang ang "+p(a,"numBlocks",0,"fil",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"fil",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" ng "+v(a,"stage_total")},c.repeat=function(){return"ulitin"},c.resetProgram=function(){return"Ulitin"},c.runProgram=function(){return"Patakbuhin"},c.runTooltip=function(){return"Patakbuhin ang program na tinutukoy ng mga block sa workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Ipakita ang Code"},c.showGeneratedCode=function(){return"Ipakita ang Code"},c.subtitle=function(){return"isang visual programming na environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Ginagamit mo ang lahat na posibleng klase ng bloke, ngunit subukan mong gamitin ang iba pang mga uri ng mga block upang makumpleto ang puzzle na ito."},c.tooManyBlocksMsg=function(){return"Ang puzzle na ito ay maaaring malutas gamit ang na mga block."},c.tooMuchWork=function(){return"Pinagawa mo ako ng naparaming trabaho! Maaari mo ba na ulitin ng mas kaunting mga beses?"},c.toolboxHeader=function(){return"Mga block"},c.openWorkspace=function(){return"Kung Paano Ito Gumagana"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"fil",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Subukang muli"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Bumalik sa nakaraang level"},c.saveToGallery=function(){return"I-save sa iyong gallery"},c.savedToGallery=function(){return"I-save sa iyong gallery!"},c.typeCode=function(){return"I-type ang iyong JavaScript code pagkatapos nitong mga instruction."},c.typeFuncs=function(){return"Magagamit na mga function:%1"},c.typeHint=function(){return"Tandaan na ang mga panaklong at semicolons ay kinakailangan."},c.workspaceHeader=function(){return"I-assemble ang iyong mga bloke dito: "},c.infinity=function(){return"Walang katapusan"},c.rotateText=function(){return"Paikutin ang iyong device."},c.orientationLock=function(){return"I-off ang orientation ng lock sa mga setting ng device."},c.wantToLearn=function(){return"Gusto mo matuto mag-code?"},c.watchVideo=function(){return"Panoorin ang Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Subukan ang Hour of Code"},c.signup=function(){return"Mag-sign up para sa intro ng kurso"},c.hintHeader=function(){return"Narito ang isang tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.fil=function(a){return 0===a||1==a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Mga aksyon"},c.catControl=function(){return"Mga loop"},c.catEvents=function(){return"Mga event"},c.catLogic=function(){return"Lohika"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Mga function"},c.catText=function(){return"Text"},c.catVariables=function(){return"Mga variable"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Magpatuloy"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"mag-type dito"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Maligayang pagbati! Nalutas mo na ang pinakahuling puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"iskor puntos ng manlalaro"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Gumawa Ng Sarili Mong Kuwento"},c.moveDirectionDown=function(){return"baba"},c.moveDirectionLeft=function(){return"kaliwa"},c.moveDirectionRight=function(){return"kanan"},c.moveDirectionUp=function(){return"taas"},c.moveDirectionRandom=function(){return"nang hindi pinipili"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random na mga pixel"},c.moveDistanceTooltip=function(){return"Igalaw ang aktor sa partikular na distansya sa tinukoy na direksyon."},c.moveSprite=function(){return"galaw"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"igalaw pababa"},c.moveDownTooltip=function(){return"Igalaw ang aktor pababa."},c.moveLeft=function(){return"igalaw pakaliwa"},c.moveLeftTooltip=function(){return"Igalaw ang aktor pakaliwa."},c.moveRight=function(){return"igalaw pakanan"},c.moveRightTooltip=function(){return"Igalaw ang aktor pakanan."},c.moveUp=function(){return"igalaw pataas"},c.moveUpTooltip=function(){return"Igalaw ang aktor pataas."},c.moveTooltip=function(){return"Igalaw ang aktor."},c.nextLevel=function(){return"Maligayang pagbati! Natapos mo ang puzzle na ito."},c.no=function(){return"Hindi"},c.numBlocksNeeded=function(){return"Ang puzzle na ito ay maaaring malutas sa %1 na mga block."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"magpatugtog ng crunch na tunog"},c.playSoundGoal1=function(){return"patugtugin ang goal 1 na tunog"},c.playSoundGoal2=function(){return"patugtugin ang goal 2 na tunog"},c.playSoundHit=function(){return"patugtugin ang hit na tunog"},c.playSoundLosePoint=function(){return"patugtugin ang lose point na tunog"},c.playSoundLosePoint2=function(){return"patugtugin ang lose point 2 na tunog"},c.playSoundRetro=function(){return"pagtugtugin ang retro na tunog"},c.playSoundRubber=function(){return"patugtugin ang rubber na tunog"},c.playSoundSlap=function(){return"patugtugin ang slap na tunog"},c.playSoundTooltip=function(){return"Magpatugtog ng napiling tunog."},c.playSoundWinPoint=function(){return"patugtugin ang win point na tunog"},c.playSoundWinPoint2=function(){return"patugtugin ang win point 2 na tunog"},c.playSoundWood=function(){return"patugtugin ang wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"sa kaliwang tuktok na posisyon"},c.positionTopCenter=function(){return"sa gitnang tuktok na posisyon"},c.positionTopRight=function(){return"sa kanang tuktok na posisyon"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"sa gitnang kaliwa na posisyon"},c.positionMiddleCenter=function(){return"sa gitnang posisyon"},c.positionMiddleRight=function(){return"sa gitnang kanan na posisyon"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"sa kaliwang ibaba na posisyon"},c.positionBottomCenter=function(){return"sa kanang ibaba na posisyon"},c.positionBottomRight=function(){return"sa kanang ibaba na posisyon"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"sa random na posisyon"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"nang hindi pinipili"},c.reinfFeedbackMsg=function(){return'Maaarin mo pindutin ang "Subukan muli" na button upang bumalik sa paglalaro.'},c.repeatForever=function(){return"ulitin ng walang katapusan"},c.repeatDo=function(){return"gawin"},c.repeatForeverTooltip=function(){return"Ipatupad ang mga aksyon sa block na ito ng paulit-ulit habang ang kuwento ay tumatakbo."},c.saySprite=function(){return"sabihin"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Magpakita ng speech bubble ng mga nauugnay na teksto mula sa tinukoy na aktor."},c.scoreText=function(a){return"Puntos: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"i-set ang random na background"},c.setBackgroundBlack=function(){return"i-set ang itim na background"},c.setBackgroundCave=function(){return"i-set ang kuweba na background"},c.setBackgroundCloudy=function(){return"i-set ang maulap na background"},c.setBackgroundHardcourt=function(){return"i-set ang hardcourt na background"},c.setBackgroundNight=function(){return"i-set ang gabi na background"},c.setBackgroundUnderwater=function(){return"i-set ang sa ilalim ng dagat na background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Nilalagay ang larawan sa background"},c.setScoreText=function(){return"ilagay ang puntos"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"sa isang galit na damdamin"},c.setSpriteEmotionHappy=function(){return"sa isang masaya na damdamin"},c.setSpriteEmotionNormal=function(){return"sa isang normal na damdamin"},c.setSpriteEmotionRandom=function(){return"sa isang random na damdamin"},c.setSpriteEmotionSad=function(){return"sa isang malungkot na damdamin"},c.setSpriteEmotionTooltip=function(){return"Itinatakda ang damdamin ng aktor"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"sa isang nakatago na imahe"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"sa isang random na imahe"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"sa isang witch na imahe"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Agad na naglilipat ng isang aktor sa tinukoy na lokasyon."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"I-set ang imahe ng aktor"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"sa random na bilis"},c.setSpriteSpeedVerySlow=function(){return"sa napakabagal na bilis"},c.setSpriteSpeedSlow=function(){return"sa mabagal na bilis"},c.setSpriteSpeedNormal=function(){return"sa normal na bilis"},c.setSpriteSpeedFast=function(){return"sa napakabilis"},c.setSpriteSpeedVeryFast=function(){return"sa pinakamabilis"},c.setSpriteSpeedTooltip=function(){return"Sini-set ang bilis ng aktor"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Tingnan ang kuwento na ginawa ko. Ako mismo ang nagsulat nito sa @codeorg"},c.shareGame=function(){return"Ibahagi ang iyong kuwento:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"hinto"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Itigil ang ginagawa ng aktor."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"maghintay sa click"},c.waitForRandom=function(){return"maghintay sa random"},c.waitForHalfSecond=function(){return"maghintay ng kalahating segundo"},c.waitFor1Second=function(){return"maghintay ng 1 segundo"},c.waitFor2Seconds=function(){return"maghintay ng 2 segundo"},c.waitFor5Seconds=function(){return"maghintay ng 5 segundo"},c.waitFor10Seconds=function(){return"maghintay ng 10 segundo"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Maghintay ng tinakdang oras o kaya hanggang meron click na maganap."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"kapag ang pababang arrow"},c.whenDownTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang pataas na arrow key ay pinindot."},c.whenGameStarts=function(){return"kapag nagsimula ang kuwento"},c.whenGameStartsTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag nagsimula ang kuwento."},c.whenLeft=function(){return"kapag ang kaliwa na arrow"},c.whenLeftTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang pataas na arrow key ay pinindot."},c.whenRight=function(){return"kapag ang kanan na arrow"},c.whenRightTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang pataas na arrow key ay pinindot."},c.whenSpriteClicked=function(){return"kapag ang aktor ay na-click"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang isang artista ay na-click."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang isang aktor ay hinawakan ang isa pang aktor."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"kapag ang pataas na arrow"},c.whenUpTooltip=function(){return"Ipatupad ang mga aksyon sa ibaba kapag ang pataas na arrow key ay pinindot."},c.yes=function(){return"Oo"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/fr_fr/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/fr_fr/common":40,"../../locale/fr_fr/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/fr_fr/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/fr_fr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/fr_fr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/fr_fr/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/fr_fr/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/fr_fr/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.fr=function(a){return 0===a||1==a?"one":"other"},c.and=function(){return"et"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Actions"},c.catColour=function(){return"Couleur"},c.catLogic=function(){return"Logique"},c.catLists=function(){return"Listes"},c.catLoops=function(){return"Boucles"},c.catMath=function(){return"Calculs"},c.catProcedures=function(){return"Fonctions"},c.catText=function(){return"Texte"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"Voir le code JavaScript généré."},c.continue=function(){return"Continuer"},c.dialogCancel=function(){return"Annuler"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"O"},c.end=function(){return"fin"},c.emptyBlocksErrorMsg=function(){return"Le bloc « Répéter » ou « si » doit contenir d'autres blocs pour fonctionner. Assurez-vous que le bloc interne s'insère correctement à l'intérieur du bloc conteneur."},c.emptyFunctionBlocksErrorMsg=function(){return"Le bloc fonctionnel doit avoir d'autres blocs à l'intérieur pour fonctionner."},c.extraTopBlocks=function(){return"Vous avez disposé des blocs qui ne sont rattachés à aucun bloc d'évènement."},c.finalStage=function(){return"Félicitations ! Vous avez terminé l'étape finale."},c.finalStageTrophies=function(a){return"Félicitations ! Vous avez terminé l'étape finale et gagné "+p(a,"numTrophies",0,"fr",{one:"un trophée",other:n(a,"numTrophies")+" trophées"})+"."},c.finish=function(){return"Terminer"},c.generatedCodeInfo=function(a){return"Même les plus grandes universités enseignent la programmation basée sur les blocs (ex., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Mais en prenant du recul, les blocs que vous avez assemblés peuvent aussi être affichés en Javascript, le langage de programmation le plus utilisé au monde :"},c.hashError=function(){return"Désolé, '%1' ne correspond à aucun programme enregistré."},c.help=function(){return"Aide"},c.hintTitle=function(){return"Indice :"},c.jump=function(){return"saut"},c.levelIncompleteError=function(){return"Vous utilisez tous les types nécessaires de blocs, mais pas de la bonne manière."},c.listVariable=function(){return"liste"},c.makeYourOwnFlappy=function(){return"Réalisez votre propre Flappy Bird"},c.missingBlocksErrorMsg=function(){return"Essayez un ou plusieurs des blocs ci-dessous pour résoudre ce puzzle."},c.nextLevel=function(a){return"Félicitations ! Vous avez terminé le Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Félicitations ! Vous avez terminé le Puzzle "+v(a,"puzzleNumber")+" et gagné "+p(a,"numTrophies",0,"fr",{one:"un trophée",other:n(a,"numTrophies")+" trophées"})+"." },c.nextStage=function(a){return"Félicitations ! Vous avez terminé "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Félicitations ! Vous avez terminé "+v(a,"stageName")+" et gagné "+p(a,"numTrophies",0,"fr",{one:"un trophée",other:n(a,"numTrophies")+" trophées"})+"."},c.numBlocksNeeded=function(a){return"Félicitations ! Vous avez terminé le Puzzle "+v(a,"puzzleNumber")+". (Toutefois, vous auriez pu utiliser seulement "+p(a,"numBlocks",0,"fr",{one:"1 bloc",other:n(a,"numBlocks")+" blocs"})+".)"},c.numLinesOfCodeWritten=function(a){return"Vous venez d'écrire "+p(a,"numLines",0,"fr",{one:"1 ligne",other:n(a,"numLines")+" lignes "})+" de code!"},c.play=function(){return"jouer"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" sur "+v(a,"stage_total")},c.repeat=function(){return"répéter"},c.resetProgram=function(){return"Réinitialiser"},c.runProgram=function(){return"Démarrer"},c.runTooltip=function(){return"Exécuter le programme défini par les blocs dans l'espace de travail."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Afficher le Code"},c.showGeneratedCode=function(){return"Afficher le code"},c.subtitle=function(){return"un environnement visuel de programmation"},c.textVariable=function(){return"texte"},c.tooFewBlocksMsg=function(){return"Vous utilisez tous les types des blocs nécessaires, mais essayez d'utiliser plus de ces types de blocs pour compléter ce puzzle."},c.tooManyBlocksMsg=function(){return"Ce puzzle peut être résolu avec blocs."},c.tooMuchWork=function(){return"Vous m'avez fait faire beaucoup de travail ! Pourriez-vous essayer en répétant moins de fois ?"},c.toolboxHeader=function(){return"Blocs"},c.openWorkspace=function(){return"Comment ça marche"},c.totalNumLinesOfCodeWritten=function(a){return"Production totale : "+p(a,"numLines",0,"fr",{one:"1 ligne",other:n(a,"numLines")+" lignes"})+" de code."},c.tryAgain=function(){return"Réessayer"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Retour au niveau précédent"},c.saveToGallery=function(){return"Enregistrer dans votre galerie"},c.savedToGallery=function(){return"Enregistré dans votre galerie !"},c.typeCode=function(){return"Tapez votre code JavaScript en dessous de ces instructions."},c.typeFuncs=function(){return"Fonctions disponibles:%1"},c.typeHint=function(){return"Notez que les parenthèses et les point-virgules sont nécessaires."},c.workspaceHeader=function(){return"Assemblez vos blocs ici : "},c.infinity=function(){return"Infini"},c.rotateText=function(){return"Tournez votre appareil."},c.orientationLock=function(){return"Désactivez le verrouillage de l'orientation dans les réglages de votre appareil."},c.wantToLearn=function(){return"Vous souhaitez apprendre à coder ?"},c.watchVideo=function(){return"Voir la vidéo"},c.when=function(){return"lors"},c.whenRun=function(){return"lors du lancement"},c.tryHOC=function(){return"Essayez l'Heure de Code"},c.signup=function(){return"Inscrivez-vous au cours d'introduction"},c.hintHeader=function(){return"Voici une astuce :"},c.genericFeedback=function(){return"Observez le résultat et essayez de corriger les erreurs."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.fr=function(a){return 0===a||1==a?"one":"other"},c.actor=function(){return"acteur"},c.catActions=function(){return"Actions"},c.catControl=function(){return"Boucles"},c.catEvents=function(){return"Événements"},c.catLogic=function(){return"Logique"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Fonctions"},c.catText=function(){return"Texte"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Ajouter ou enlever un point au score."},c.changeScoreTooltipK1=function(){return"Ajouter un point au score."},c.continue=function(){return"Continuer"},c.decrementPlayerScore=function(){return"supprimer le point"},c.defaultSayText=function(){return"Tapez ici"},c.emotion=function(){return"humeur"},c.finalLevel=function(){return"Félicitations ! Vous avez résolu la dernière énigme."},c.hello=function(){return"salut"},c.helloWorld=function(){return"Bonjour tout le monde!"},c.incrementPlayerScore=function(){return"marquer un point"},c.makeProjectileDisappear=function(){return"disparaître"},c.makeProjectileBounce=function(){return"rebondir"},c.makeProjectileBlueFireball=function(){return"fabriquer une boule de feu bleue"},c.makeProjectilePurpleFireball=function(){return"fabriquer une boule de feu violette"},c.makeProjectileRedFireball=function(){return"fabriquer une boule de feu rouge"},c.makeProjectileYellowHearts=function(){return"fabriquer des coeurs jaunes"},c.makeProjectilePurpleHearts=function(){return"fabriquer des coeurs violets"},c.makeProjectileRedHearts=function(){return"fabriquer des coeurs violets"},c.makeProjectileTooltip=function(){return"Faire disparaitre ou rebondir le projectile qui heurte une surface ."},c.makeYourOwn=function(){return"Créez votre propre histoire"},c.moveDirectionDown=function(){return"vers le bas"},c.moveDirectionLeft=function(){return"gauche"},c.moveDirectionRight=function(){return"droite"},c.moveDirectionUp=function(){return"vers le haut"},c.moveDirectionRandom=function(){return"aléatoire"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"pixels aléatoires"},c.moveDistanceTooltip=function(){return"Déplacer un acteur sur une certaine distance dans la direction spécifiée."},c.moveSprite=function(){return"déplacer"},c.moveSpriteN=function(a){return"déplacer l'acteur "+v(a,"spriteIndex")},c.moveDown=function(){return"déplacer vers le bas"},c.moveDownTooltip=function(){return"Déplacer un acteur vers le bas."},c.moveLeft=function(){return"déplacer vers la gauche"},c.moveLeftTooltip=function(){return"Déplacer un acteur vers la gauche."},c.moveRight=function(){return"déplacer vers la droite"},c.moveRightTooltip=function(){return"Déplacer un acteur vers la droite."},c.moveUp=function(){return"déplacer vers le haut"},c.moveUpTooltip=function(){return"Déplacer un acteur vers le haut."},c.moveTooltip=function(){return"Déplacer un acteur."},c.nextLevel=function(){return"Félicitations ! Vous avez terminé cette énigme."},c.no=function(){return"Non"},c.numBlocksNeeded=function(){return"Cette énigme peut être résolue avec %1 blocs."},c.ouchExclamation=function(){return"Aïe !"},c.playSoundCrunch=function(){return"jouer le son Croquement"},c.playSoundGoal1=function(){return"jouer le son but 1"},c.playSoundGoal2=function(){return"jouer le son but 2"},c.playSoundHit=function(){return"jouer le son coup"},c.playSoundLosePoint=function(){return"jour le son perdre un point"},c.playSoundLosePoint2=function(){return"jour le son perdre un point 2"},c.playSoundRetro=function(){return"jouer un son rétro"},c.playSoundRubber=function(){return"jouer un son caoutchouc"},c.playSoundSlap=function(){return"jouer un son claque"},c.playSoundTooltip=function(){return"Jouer le son choisi."},c.playSoundWinPoint=function(){return"jouer le son gagner un point"},c.playSoundWinPoint2=function(){return"jouer le son gagner un point 2"},c.playSoundWood=function(){return"jouer un son de bois"},c.positionOutTopLeft=function(){return"à la position en haut à gauche"},c.positionOutTopRight=function(){return"à la position en haut à droite"},c.positionTopOutLeft=function(){return"vers le haut extérieur gauche"},c.positionTopLeft=function(){return"à la position en haut à gauche"},c.positionTopCenter=function(){return"à la position en haut au centre"},c.positionTopRight=function(){return"à la position en haut à droite"},c.positionTopOutRight=function(){return"vers le haut extérieur droit"},c.positionMiddleLeft=function(){return"à la position au milieu gauche"},c.positionMiddleCenter=function(){return"à la position au centre au milieu "},c.positionMiddleRight=function(){return"à la position au milieu à droite"},c.positionBottomOutLeft=function(){return"vers le bas extérieur gauche"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"vers une position aléatoire"},c.projectileBlueFireball=function(){return"boule de feu bleue"},c.projectilePurpleFireball=function(){return"boule de feu violette"},c.projectileRedFireball=function(){return"boule de feu rouge"},c.projectileYellowHearts=function(){return"coeurs jaunes"},c.projectilePurpleHearts=function(){return"coeurs violets"},c.projectileRedHearts=function(){return"coeurs rouges"},c.projectileRandom=function(){return"aléatoire"},c.reinfFeedbackMsg=function(){return"Vous pouvez cliquer sur le bouton « Réessayer » pour revenir à votre partie."},c.repeatForever=function(){return"répéter à l'infini"},c.repeatDo=function(){return"faire"},c.repeatForeverTooltip=function(){return"Exécuter les actions dans ce bloc à plusieurs reprises pendant que l'histoire est en marche."},c.saySprite=function(){return"dire"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score : "+v(a,"playerScore")},c.setBackground=function(){return"définir l'arrière-plan"},c.setBackgroundRandom=function(){return"définir un arrière-plan aléatoire"},c.setBackgroundBlack=function(){return"définir l'arrière-plan noir"},c.setBackgroundCave=function(){return"définir l'arrière-plan Caverne"},c.setBackgroundCloudy=function(){return"définir l'arrière-plan Nuageux"},c.setBackgroundHardcourt=function(){return"définir l'arrière-plan Terrain"},c.setBackgroundNight=function(){return"définir l'arrière-plan Nuit"},c.setBackgroundUnderwater=function(){return"définir l'arrière-plan Sous-marin"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Définit l'image d'arrière-plan"},c.setScoreText=function(){return"mettre le score à"},c.setScoreTextTooltip=function(){return"définit le texte à afficher dans la zone de score."},c.setSpriteEmotionAngry=function(){return"de mauvaise humeur"},c.setSpriteEmotionHappy=function(){return"de bonne humeur"},c.setSpriteEmotionNormal=function(){return"d'humeur normal"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"à une vitesse aléatoire"},c.setSpriteSpeedVerySlow=function(){return"à une vitesse très lente"},c.setSpriteSpeedSlow=function(){return"à une vitesse lente"},c.setSpriteSpeedNormal=function(){return"à une vitesse normale"},c.setSpriteSpeedFast=function(){return"à une vitesse rapide"},c.setSpriteSpeedVeryFast=function(){return"à une vitesse très rapide"},c.setSpriteSpeedTooltip=function(){return"Définit la vitesse d'un acteur"},c.setSpriteZombie=function(){return"vers une image de zombie"},c.shareStudioTwitter=function(){return"Découvrez l'histoire que j'ai faite. Je l'ai écrit moi-même avec @codeorg"},c.shareGame=function(){return"Partagez votre histoire :"},c.showTitleScreen=function(){return"afficher l'écran titre"},c.showTitleScreenTitle=function(){return"titre"},c.showTitleScreenText=function(){return"texte"},c.showTSDefTitle=function(){return"taper le titre ici"},c.showTSDefText=function(){return"taper le texte ici"},c.showTitleScreenTooltip=function(){return"Afficher un écran titre avec le titre et le texte correspondants."},c.setSprite=function(){return"mettre"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"objectif 1"},c.soundGoal2=function(){return"objectif 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"Perdre un point"},c.soundLosePoint2=function(){return"perdre un point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"vitesse"},c.stopSprite=function(){return"arrêter"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Arrête le mouvement d'un acteur."},c.throwSprite=function(){return"jeter"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Lance un projectile de l'acteur spécifié."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"Attendre"},c.waitSeconds=function(){return"secondes"},c.waitForClick=function(){return"attendre le clic"},c.waitForRandom=function(){return"attendre un événement aléatoire"},c.waitForHalfSecond=function(){return"Attendre une demi-seconde"},c.waitFor1Second=function(){return"Attendre 1 seconde"},c.waitFor2Seconds=function(){return"Attendre 2 secondes"},c.waitFor5Seconds=function(){return"Attendre 5 secondes"},c.waitFor10Seconds=function(){return"Attendre 10 secondes"},c.waitParamsTooltip=function(){return"Attendez le nombre de secondes indiqué ou utilisez 0 pour attendre jusqu'au clic."},c.waitTooltip=function(){return"Attendez le temps indiqué ou jusqu'au clic."},c.whenArrowDown=function(){return"flèche vers le bas"},c.whenArrowLeft=function(){return"flèche vers la gauche"},c.whenArrowRight=function(){return"flèche vers la droite"},c.whenArrowUp=function(){return"flèche vers le haut"},c.whenArrowTooltip=function(){return"Exécutez les actions ci-dessous lorsque le flèche indiquée est pressée."},c.whenDown=function(){return"quand flèche en bas"},c.whenDownTooltip=function(){return"Exécute les actions ci-dessous quand on presse la touche 'flèche en bas'."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"quand flèche à gauche"},c.whenLeftTooltip=function(){return"Exécute les actions ci-dessous quand on presse la touche 'flèche à gauche'."},c.whenRight=function(){return"quand flèche à droite"},c.whenRightTooltip=function(){return"Exécute les actions ci-dessous quand on presse la touche 'flèche à droite'."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touche"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touche le bord du bas"},c.whenSpriteCollidedWithLeftEdge=function(){return"touche le bord gauche"},c.whenSpriteCollidedWithRightEdge=function(){return"touche le bord droit"},c.whenSpriteCollidedWithTopEdge=function(){return"touche le bord du haut"},c.whenUp=function(){return"quand flèche en haut"},c.whenUpTooltip=function(){return"Exécute les actions ci-dessous quand on presse la touche 'flèche en haut'."},c.yes=function(){return"Oui"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/he_il/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/he_il/common":40,"../../locale/he_il/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/he_il/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/he_il/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/he_il/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/he_il/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/he_il/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/he_il/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.he=function(a){return 1===a?"one":"other"},c.and=function(){return"וגם"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"פעולות"},c.catColour=function(){return"צבע"},c.catLogic=function(){return"לוגיקה"},c.catLists=function(){return"רשימות"},c.catLoops=function(){return"לולאות"},c.catMath=function(){return"מתמטיקה"},c.catProcedures=function(){return"פונקציות"},c.catText=function(){return"טקסט"},c.catVariables=function(){return"משתנים"},c.codeTooltip=function(){return"ראה קוד JavaScript שנוצר."},c.continue=function(){return"המשך"},c.dialogCancel=function(){return"בטל"},c.dialogOK=function(){return"אישור"},c.directionNorthLetter=function(){return"צ"},c.directionSouthLetter=function(){return"ס"},c.directionEastLetter=function(){return"מז"},c.directionWestLetter=function(){return"מע"},c.end=function(){return"סוף"},c.emptyBlocksErrorMsg=function(){return'בלוקי ה"חזור שוב" או "אם" צריכים להיות בעלי בלוקים פנימיים כדי לעבוד. וודא כי הבלוק הפנימי מתאים בבלוק המכיל.'},c.emptyFunctionBlocksErrorMsg=function(){return"פונקציית הבלוק דורשת בלוקים אחרים בתוך לעבודה."},c.extraTopBlocks=function(){return"יש לך קוביות מיותרות שלא מחוברת לקוביית הארוע."},c.finalStage=function(){return"כל הכבוד! השלמת את השלב הסופי."},c.finalStageTrophies=function(a){return"כל הכבוד! השלמת את השלב הסופי וזכית ב"+p(a,"numTrophies",0,"he",{one:"פרס",other:n(a,"numTrophies")+" פרסים"})+"."},c.finish=function(){return"סיים"},c.generatedCodeInfo=function(a){return"אפילו האוניברסטאות העליונות מלמדות קידוד מבוסס בלוק (לדוגמה, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). אבל מתחת למכסה המנוע, האבנים שאספת ניתנות לצפייה גם בג'אווה סקריפט, שפת הקידוד המדוברת בעולם:"},c.hashError=function(){return"סליחה, אך '%1' אינו תואם לאף תוכנית שנשמרה."},c.help=function(){return"עזרה"},c.hintTitle=function(){return"רמז:"},c.jump=function(){return"קפיצה"},c.levelIncompleteError=function(){return"הנך משתמש בכל סוגי הבלוקים הנדרשים אך לא באופן הנכון."},c.listVariable=function(){return"רשימה"},c.makeYourOwnFlappy=function(){return"תיצור משחק פלפי משלך"},c.missingBlocksErrorMsg=function(){return"השתמש באחד או יותר מהבלוקים להלן כדי לפתור את החידה."},c.nextLevel=function(a){return"כל הכבוד! השלמת את חידה "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"כל הכבוד! השלמת את חידה "+v(a,"puzzleNumber")+" וזכית ב"+p(a,"numTrophies",0,"he",{one:"פרס",other:n(a,"numTrophies")+" פרסים"})+"."},c.nextStage=function(a){return"מזל טוב! השלמת "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"כל הכבוד! השלמת את שלב "+v(a,"stageNumber")+" וזכית ב"+p(a,"numTrophies",0,"he",{one:"פרס",other:n(a,"numTrophies")+" פרסים"})+"."},c.numBlocksNeeded=function(a){return"כל הכבוד! השלמת את חידה "+v(a,"puzzleNumber")+". (עם זאת, יכולת להשתמש רק ב "+p(a,"numBlocks",0,"he",{one:"1 בלוק",other:n(a,"numBlocks")+" בלוקים"})+".)" },c.numLinesOfCodeWritten=function(a){return"כתבת "+p(a,"numLines",0,"he",{one:"שורת",other:n(a,"numLines")+" שורות"})+" קוד!"},c.play=function(){return"לשחק"},c.puzzleTitle=function(a){return"חידה "+v(a,"puzzle_number")+" מ- "+v(a,"stage_total")},c.repeat=function(){return"חזור"},c.resetProgram=function(){return"אפס"},c.runProgram=function(){return"ריצה"},c.runTooltip=function(){return"הפעל את התוכנית המוגדרת על-ידי הבלוקים בסביבת העבודה."},c.score=function(){return"ציון"},c.showCodeHeader=function(){return"הצג קוד"},c.showGeneratedCode=function(){return"הצג קוד"},c.subtitle=function(){return"סביבת תיכנות חזותית"},c.textVariable=function(){return"טקסט"},c.tooFewBlocksMsg=function(){return"אתה משתמש בכל סוגי הבלוקים הנחוצים, אך נסה להשתמש ביותר בלוקים מסוגים אלו כדי להשלים את הפאזל."},c.tooManyBlocksMsg=function(){return"ניתן לפתור את החידה הזאת עם בלוקים."},c.tooMuchWork=function(){return"גרמת לי להרבה עבודה! האם אתה יכול לנסות לחזור פחות פעמים?"},c.toolboxHeader=function(){return"בלוקים"},c.openWorkspace=function(){return"איך זה עובד"},c.totalNumLinesOfCodeWritten=function(a){return"סך כל הזמנים: "+p(a,"numLines",0,"he",{one:"שורה אחת",other:n(a,"numLines")+" שורות"})+" של קוד."},c.tryAgain=function(){return"נסה שוב"},c.hintRequest=function(){return"ראה רמז"},c.backToPreviousLevel=function(){return"חזרה לשלב הקודם"},c.saveToGallery=function(){return"לשמור את הגלריה שלך"},c.savedToGallery=function(){return"נשמר לגלריה שלך!"},c.typeCode=function(){return"הקלד את קוד ה JavaScript שלך מתחת להוראות אלו."},c.typeFuncs=function(){return"פונקציות אפשריות: %1"},c.typeHint=function(){return"שימו לב כי סוגריים ונקודה-פסיק הכרחיים."},c.workspaceHeader=function(){return"הרכב את הבלוקים שלך כאן: "},c.infinity=function(){return"אינסוף"},c.rotateText=function(){return"סובב את המכשיר שלך."},c.orientationLock=function(){return"בטל את נעילת הכיוון בהגדרות המכשיר."},c.wantToLearn=function(){return"רוצה ללמוד לתכנת?"},c.watchVideo=function(){return"צפה בסרטון"},c.when=function(){return"מתי"},c.whenRun=function(){return"מתי לרוץ"},c.tryHOC=function(){return'נסה את "שעת הקוד" (Hour of Code)'},c.signup=function(){return"הירשם לקורס המבוא"},c.hintHeader=function(){return"הנה עצה:"},c.genericFeedback=function(){return"לראות איך גמרת, ולנסות לתקן את התוכנית שלך."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.he=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"פעולות"},c.catControl=function(){return"לולאות"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"לוגיקה"},c.catMath=function(){return"מתמטיקה"},c.catProcedures=function(){return"פונקציות"},c.catText=function(){return"טקסט"},c.catVariables=function(){return"משתנים"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"המשך"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"מזל טוב! השלמת את הפאזל האחרון."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"נקודת דרוג"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"תיצור סיפור משלך"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"אקראי"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"פיקסלים"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"הזז למטה"},c.moveDownTooltip=function(){return"העבר את המשוט למטה."},c.moveLeft=function(){return"זוז שמאלה"},c.moveLeftTooltip=function(){return"הזז את המשוט לשמאל."},c.moveRight=function(){return"זוז ימינה"},c.moveRightTooltip=function(){return"הזז את המשוט לימין."},c.moveUp=function(){return"זוז למעלה"},c.moveUpTooltip=function(){return"הזז את המשוט למעלה."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"מזל טוב! השלמת את הפאזל הזה."},c.no=function(){return"לא"},c.numBlocksNeeded=function(){return"ניתן לפתור את הפאזל עם %1 בלוק."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"נגן צליל מעיכה"},c.playSoundGoal1=function(){return"השמע צליל מטרה 1"},c.playSoundGoal2=function(){return"השמע צליל מטרה 2"},c.playSoundHit=function(){return"השמע צליל פגיעה"},c.playSoundLosePoint=function(){return"השמע צליל איבוד נקודה"},c.playSoundLosePoint2=function(){return"השמע צליל איבוד נקודה 2"},c.playSoundRetro=function(){return"השמע צליל רטרו"},c.playSoundRubber=function(){return"השמע צליל גומי"},c.playSoundSlap=function(){return"השמע צליל סטירה"},c.playSoundTooltip=function(){return"נגן את הצליל שנבחר."},c.playSoundWinPoint=function(){return"השמע צליל נקודת ניצחון"},c.playSoundWinPoint2=function(){return"השמע צליל נקודת ניצחון 2"},c.playSoundWood=function(){return"השמע צליל עץ"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"אקראי"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"בצע"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"ציון: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"הגדר ניקוד"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"טקסט"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"הגדר"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"מעיכה"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"כאשר חץ למטה"},c.whenDownTooltip=function(){return"בצע את הפעולות להלן כאשר נלחץ על המקש חץ למטה."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"כאשר חץ שמאלה"},c.whenLeftTooltip=function(){return"בצע את הפעולות להלן כאשר נלחץ על מקש חץ שמאלה."},c.whenRight=function(){return"כאשר חץ ימינה"},c.whenRightTooltip=function(){return"בצע את הפעולות להלן כאשר נלחץ על המקש חץ ימינה."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"כאשר חץ למעלה"},c.whenUpTooltip=function(){return"בצע את הפעולות להלן כאשר נלחץ המקש חץ למעלה."},c.yes=function(){return"כן"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/hi_in/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/hi_in/common":40,"../../locale/hi_in/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/hi_in/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/hi_in/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/hi_in/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/hi_in/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hi_in/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hi_in/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.hi=function(a){return 0===a||1==a?"one":"other"},c.and=function(){return"and"},c.blocklyMessage=function(){return"ब्लॉक्ली"},c.catActions=function(){return"क्रियाएँ"},c.catColour=function(){return"रंग"},c.catLogic=function(){return"तर्क"},c.catLists=function(){return"सूचियाँ"},c.catLoops=function(){return"फंदे"},c.catMath=function(){return"गणित"},c.catProcedures=function(){return"कार्य"},c.catText=function(){return"पाठ"},c.catVariables=function(){return"चर"},c.codeTooltip=function(){return"उत्पन्न जावा कोड देखें"},c.continue=function(){return"जारी रखें"},c.dialogCancel=function(){return"रद्द करें"},c.dialogOK=function(){return"ठीक है"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"दोहराएँ" या "यदि" ब्लॉक को काम करने के लिए अपने अंदर अन्य ब्लॉक्स की ज़रूरत है । ध्यान दें कि भीतर के ब्लॉक बाहरी ब्लॉक में ठीक बैठें।'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"बधाई हो! आपने अंतिम चरण पूरा कर लिया है।"},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"hi",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Help"},c.hintTitle=function(){return"Hint:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"सूची"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"hi",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"hi",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"hi",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)" },c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"hi",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"दोहराएँ"},c.resetProgram=function(){return"Reset"},c.runProgram=function(){return"Run Program"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Show Code"},c.showGeneratedCode=function(){return"Show code"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blocks"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"hi",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Try again"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.hi=function(a){return 0===a||1==a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"क्रियाएँ"},c.catControl=function(){return"फंदे"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"तर्क"},c.catMath=function(){return"गणित"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"पाठ"},c.catVariables=function(){return"चर"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"जारी रखें"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"random"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"random"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Yes"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E]; if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/hr_hr/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/hr_hr/common":40,"../../locale/hr_hr/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/hr_hr/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/hr_hr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/hr_hr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/hr_hr/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hr_hr/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hr_hr/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.hr=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.and=function(){return"i"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Akcije"},c.catColour=function(){return"Boja"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Liste"},c.catLoops=function(){return"Petlje"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkcije"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Varijable"},c.codeTooltip=function(){return"Pogledaj stvoreni JavaScript kôd."},c.continue=function(){return"Nastavi"},c.dialogCancel=function(){return"Odustani"},c.dialogOK=function(){return"U redu"},c.directionNorthLetter=function(){return"S"},c.directionSouthLetter=function(){return"J"},c.directionEastLetter=function(){return"I"},c.directionWestLetter=function(){return"Z"},c.end=function(){return"kraj"},c.emptyBlocksErrorMsg=function(){return'Da bi blok "Ponovi" ili "Ako" radio, u njega treba ugraditi druge blokove. Provjeri uklapa li se unutarnji blok pravilno u vanjski blok.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return'Imaš viška blokova koji nisu povezani za "događaj" blokom.'},c.finalStage=function(){return"Čestitamo! Posljednja etapa je završena."},c.finalStageTrophies=function(a){return"Čestitamo! Završena je posljednja etapa i osvajaš "+p(a,"numTrophies",0,"hr",{one:"trofej",other:n(a,"numTrophies")+" trofeja"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Čak i vrhunska sveučilišta podučavaju kodiranje pomoću blokova (npr. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ali u suštini, blokovi koje si spojio se mogu prikazati kao kôd u JavaScriptu, najkorištenijem programskom jeziku na svijetu:"},c.hashError=function(){return"Nažalost, '%1' ne odgovara nijednom spremljenom programu."},c.help=function(){return"Pomoć"},c.hintTitle=function(){return"Savjet:"},c.jump=function(){return"skoči"},c.levelIncompleteError=function(){return"Koristiš sve potrebne vrste blokova, ali na pogrešan način."},c.listVariable=function(){return"popis"},c.makeYourOwnFlappy=function(){return"Napravi vlastitu Flappy igricu"},c.missingBlocksErrorMsg=function(){return"Za rješavanje ovog zadatka isprobaj jedan ili više blokova koji se nalaze ispod."},c.nextLevel=function(a){return"Čestitamo! Zadatak "+v(a,"puzzleNumber")+" je riješen."},c.nextLevelTrophies=function(a){return"Čestitamo! Riješivši Zadatak "+v(a,"puzzleNumber")+" osvajaš "+p(a,"numTrophies",0,"hr",{one:"trofej",other:n(a,"numTrophies")+" trofeja"})+"."},c.nextStage=function(a){return"Čestitke! Završio si "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Čestitamo! Završio si etapu "+v(a,"stageName")+" i osvojio "+p(a,"numTrophies",0,"hr",{one:"trofej",other:n(a,"numTrophies")+" trofeja"})+"."},c.numBlocksNeeded=function(a){return"Čestitamo! Zadatak "+v(a,"puzzleNumber")+" je riješen. (Međutim, moglo se iskoristiti samo "+p(a,"numBlocks",0,"hr",{one:"1 blok",other:n(a,"numBlocks")+" blokova"})+".)"},c.numLinesOfCodeWritten=function(a){return"Upravo si napisao "+p(a,"numLines",0,"hr",{one:"1 liniju",other:n(a,"numLines")+" linija"})+" kôda!"},c.play=function(){return"igraj"},c.puzzleTitle=function(a){return"Zadatak "+v(a,"puzzle_number")+" od "+v(a,"stage_total")},c.repeat=function(){return"ponovi"},c.resetProgram=function(){return"Ponovno"},c.runProgram=function(){return"Kreni"},c.runTooltip=function(){return"Pokreće program određen blokovima na radnom prostoru."},c.score=function(){return"bodovi"},c.showCodeHeader=function(){return"Pokaži kôd"},c.showGeneratedCode=function(){return"Pokaži kôd"},c.subtitle=function(){return"grafičko okruženje za programiranje"},c.textVariable=function(){return"tekst"},c.tooFewBlocksMsg=function(){return"Koristiš sve neophodne vrste blokova, ali za rješavanje ovog zadatka pokušaj koristiti više ovakvih blokova."},c.tooManyBlocksMsg=function(){return"Ovaj zadatak se može riješiti s blokova."},c.tooMuchWork=function(){return"Napravio si puno posla za mene! Možeš li manje puta ponavljati?"},c.toolboxHeader=function(){return"Blokovi"},c.openWorkspace=function(){return"Kako to radi"},c.totalNumLinesOfCodeWritten=function(a){return"Ukupno: "+p(a,"numLines",0,"hr",{one:"1 linija",other:n(a,"numLines")+" linija"})+" kôda."},c.tryAgain=function(){return"Pokušaj ponovno"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Povratak na prethodni nivo"},c.saveToGallery=function(){return"Spremi u svoju galeriju"},c.savedToGallery=function(){return"Spremljeno u tvoju galeriju!"},c.typeCode=function(){return"Napiši svoj JavaScript kôd ispod ovih uputa."},c.typeFuncs=function(){return"Dostupne funkcije:%1"},c.typeHint=function(){return'Uoči da su neophodne zagrade i znak ";".'},c.workspaceHeader=function(){return"Svoje blokove sastavi ovdje: "},c.infinity=function(){return"Beskonačnost"},c.rotateText=function(){return"Okreni svoj uređaj."},c.orientationLock=function(){return"U postavkama uređaja isključi blokadu orijentacije."},c.wantToLearn=function(){return"Želiš li naučiti programirati?"},c.watchVideo=function(){return"Pogledaj filmić"},c.when=function(){return"kada"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Isprobaj Hour of Code"},c.signup=function(){return"Upis na početni tečaj"},c.hintHeader=function(){return"Evo savjeta:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.hr=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Akcije"},c.catControl=function(){return"Petlje"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkcije"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Varijable"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Nastavi"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Čestitamo! Riješen je posljednji zadatak."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"osvoji bod"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Izmisli vlastitu priču"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"nasumično odabrani"},c.moveDistance25=function(){return"25 piksela"},c.moveDistance50=function(){return"50 piksela"},c.moveDistance100=function(){return"100 piksela"},c.moveDistance200=function(){return"200 piksela"},c.moveDistance400=function(){return"400 piksela"},c.moveDistancePixels=function(){return"pikseli"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"pomakni dolje"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"pomakni lijevo"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"pomakni desno"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"pomakni gore"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Čestitamo! Riješili ste zadatak."},c.no=function(){return"Ne"},c.numBlocksNeeded=function(){return"Ovaj zadatak se može riješiti s %1 blokova."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"pokreni zvuk krckanja"},c.playSoundGoal1=function(){return"pokreni zvuk cilj 1"},c.playSoundGoal2=function(){return"pokreni zvuk cilj 2"},c.playSoundHit=function(){return"pokreni zvuk udara"},c.playSoundLosePoint=function(){return"pokreni zvuk gubitak boda"},c.playSoundLosePoint2=function(){return"pokreni zvuk izgubljen bod 2"},c.playSoundRetro=function(){return"pokreni retro zvuk"},c.playSoundRubber=function(){return"pokreni zvuk gume"},c.playSoundSlap=function(){return"pokreni zvuk pljeska"},c.playSoundTooltip=function(){return"Pokreni odabrani zvuk."},c.playSoundWinPoint=function(){return"pokreni zvuk dobiveni bod"},c.playSoundWinPoint2=function(){return"pokreni zvuk dobiven bod 2"},c.playSoundWood=function(){return"pokreni zvuk drvo"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"nasumično odabrani"},c.reinfFeedbackMsg=function(){return'Pritisni tipku "Pokušaj ponovno" da se vratiš na igru.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"uradi"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Rezultat: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"postavi nasumičnu pozadinu"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"postavi pozadinu špilja"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"postavi pozadinu beton"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"postavi pozadinu pod vodom"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Postavi sliku za pozadinu"},c.setScoreText=function(){return"postavi rezultat"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"za skrivenu sliku"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"za nasumičnu sliku"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"za nasumičnu brzinu"},c.setSpriteSpeedVerySlow=function(){return"za jako sporu brzinu"},c.setSpriteSpeedSlow=function(){return"za sporu brzinu"},c.setSpriteSpeedNormal=function(){return"za normalnu brzinu"},c.setSpriteSpeedFast=function(){return"za brzu brzinu"},c.setSpriteSpeedVeryFast=function(){return"za jako brzu brzinu"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Pogledaj priču koju sam smislio/la. Napisao/la sam je sam/a s @codeorg"},c.shareGame=function(){return"Podijeli svoju priču:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"tekst"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"postaviti"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"krckati"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"kad strelica dolje"},c.whenDownTooltip=function(){return"Izvrši sljedeće akcije kad se pritisne tipka dolje."},c.whenGameStarts=function(){return"kad priča započne"},c.whenGameStartsTooltip=function(){return"Izvrši sljedeće akcije kad priča započne."},c.whenLeft=function(){return"kad lijeva strelica"},c.whenLeftTooltip=function(){return"Izvrši sljedeće akcije kad se pritisne lijeva strelica."},c.whenRight=function(){return"kad desna strelica"},c.whenRightTooltip=function(){return"Izvrši sljedeće akcije kad se pritisne desna strelica."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"kad strelica gore"},c.whenUpTooltip=function(){return"Izvrši sljedeće akcije kad se pritisne strelica gore."},c.yes=function(){return"Da"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/hu_hu/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/hu_hu/common":40,"../../locale/hu_hu/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/hu_hu/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/hu_hu/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/hu_hu/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/hu_hu/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/hu_hu/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/hu_hu/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.hu=function(){return"other"},c.and=function(){return"és"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Cselekvések"},c.catColour=function(){return"Szín"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Listák"},c.catLoops=function(){return"Ciklusok"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Függvények"},c.catText=function(){return"Szöveg"},c.catVariables=function(){return"Változók"},c.codeTooltip=function(){return"Lássuk a generált JavaScript kódot."},c.continue=function(){return"Tovább"},c.dialogCancel=function(){return"Mégsem"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"Észak"},c.directionSouthLetter=function(){return"Dél"},c.directionEastLetter=function(){return"Kelet"},c.directionWestLetter=function(){return"Nyugat"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Akkor van értelme az "Ismétel" vagy a "Ha" blokknak, ha van bennük egy vagy több blokk. Bizonyosodj meg róla, hogy a belső blokk megfelelően illeszkedik a külső blokkhoz.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Van egy blokk, ami nincs csatolva egyetlen eseményblokkhoz se."},c.finalStage=function(){return"Gratulálok! Teljesítetted az utolsó szakaszt."},c.finalStageTrophies=function(a){return"Gratulálok! Teljesítetted az utolsó szakaszt és nyertél "+p(a,"numTrophies",0,"hu",{one:"egy trófeát",other:n(a,"numTrophies")+" trófeát"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Még a legjobb egyetemei is tanítják a blokk alapú kódolást (például "+v(a,"berkeleyLink")+" "+v(a,"harvardLink")+"). De a motorháztető alatt, a blokkok amiket összeraksz, JavaScript kódok, a világ legszélesebb körben használt kódolási nyelvén:"},c.hashError=function(){return'Sajnálom, de "%1" nem felel meg egyetlen mentett programnak sem.'},c.help=function(){return"Segítség"},c.hintTitle=function(){return"Tanács:"},c.jump=function(){return"Ugorj"},c.levelIncompleteError=function(){return"Minden szükséges blokkot felhasználtál, de nem megfelelően."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Készítsd el a saját Flappy játékod"},c.missingBlocksErrorMsg=function(){return"Próbáld meg a lenti blokkokat használni, hogy megoldd a rejtvényt."},c.nextLevel=function(a){return"Gratulálok! Megoldottad a "+v(a,"puzzleNumber")+". feladványt."},c.nextLevelTrophies=function(a){return"Gratulálok! Megoldottad a "+v(a,"puzzleNumber")+". feladványt és nyertél "+p(a,"numTrophies",0,"hu",{one:"egy trófeát",other:n(a,"numTrophies")+" trófeát"})+"."},c.nextStage=function(a){return"Gratulálok! Teljesítetted a "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Gratulálok! Teljesítetted a "+v(a,"stageNumber")+". szakaszát és nyertél "+p(a,"numTrophies",0,"hu",{one:"egy trófeát",other:n(a,"numTrophies")+" trófeát"})+"." },c.numBlocksNeeded=function(a){return"Gratulálok! Megoldottad a "+v(a,"puzzleNumber")+". feladványt. (Habár megoldható csupán "+p(a,"numBlocks",0,"hu",{one:"1 blokk",other:n(a,"numBlocks")+" blokk"})+" használatával.)"},c.numLinesOfCodeWritten=function(a){return"Éppen most írtál újabb "+p(a,"numLines",0,"hu",{one:"1 sor",other:n(a,"numLines")+" sor"})+" kódot!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return v(a,"puzzle_number")+". feladvány a "+v(a,"stage_total")+" -ból"},c.repeat=function(){return"ismételd"},c.resetProgram=function(){return"Visszaállítás"},c.runProgram=function(){return"Program Futtatása"},c.runTooltip=function(){return"A munkalapon összeépített program futtatása."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Kód Megjelenítése"},c.showGeneratedCode=function(){return"Kód megjelenítése"},c.subtitle=function(){return"vizuális programozási felület"},c.textVariable=function(){return"szöveg"},c.tooFewBlocksMsg=function(){return"A megfelelő blokkokat használod, de próbálj meg többet használni belőlük, hogy megoldd a feladványt."},c.tooManyBlocksMsg=function(){return"Ez a feladvány megoldható a blokkokal."},c.tooMuchWork=function(){return"Sokat dolgoztattál. Megpróbálnád egy kicsit kevesebb ismétléssel?"},c.toolboxHeader=function(){return"Blokkok"},c.openWorkspace=function(){return"Hogyan is működik"},c.totalNumLinesOfCodeWritten=function(a){return"Összesített eredmény: "+p(a,"numLines",0,"hu",{one:"1 sor",other:n(a,"numLines")+" sor"})+" kód."},c.tryAgain=function(){return"Próbáld újra"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Vissza az előző szintre"},c.saveToGallery=function(){return"Mentés a galériába"},c.savedToGallery=function(){return"Elmentve a galáriádba"},c.typeCode=function(){return"Írd be a JavaScript kódod az instrukciók alá."},c.typeFuncs=function(){return"Elérhető funkciók:%1"},c.typeHint=function(){return"Vedd figyelembe, hogy a zárójelek és a pontosvesszők is szükségesek."},c.workspaceHeader=function(){return"Építsd össze a blokkokat itt: "},c.infinity=function(){return"Végtelenség"},c.rotateText=function(){return"Fordítsd el a készüléket."},c.orientationLock=function(){return"Kapcsold ki a tájolási zárat az eszközbeállításokban."},c.wantToLearn=function(){return"Szeretnél megtanulni programozni?"},c.watchVideo=function(){return"Nézd meg a videót"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Próbáld ki a kódolás óráját"},c.signup=function(){return"Regisztrálj a bevezető képzésre"},c.hintHeader=function(){return"Egy tipp:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.hu=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Műveletek"},c.catControl=function(){return"Ciklusok"},c.catEvents=function(){return"Események"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkciók"},c.catText=function(){return"Szöveg"},c.catVariables=function(){return"Változók"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Tovább"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"Ide írj"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Gratulálok! A megoldottad az utolsó feladványt."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"le"},c.moveDirectionLeft=function(){return"bal"},c.moveDirectionRight=function(){return"jobb"},c.moveDirectionUp=function(){return"fel"},c.moveDirectionRandom=function(){return"véletlenszerű"},c.moveDistance25=function(){return"25 pixel"},c.moveDistance50=function(){return"50 képpont"},c.moveDistance100=function(){return"100 képpont"},c.moveDistance200=function(){return"200 képpont"},c.moveDistance400=function(){return"400 képpont"},c.moveDistancePixels=function(){return"pixel"},c.moveDistanceRandom=function(){return"véletlenszerű képpontok"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"mozogj"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"lejjebb"},c.moveDownTooltip=function(){return"mozgass egy művészt lefele"},c.moveLeft=function(){return"balra"},c.moveLeftTooltip=function(){return"mozgass egy művészt balra"},c.moveRight=function(){return"jobbra"},c.moveRightTooltip=function(){return"mozgass egy művészt jobbra."},c.moveUp=function(){return"feljebb"},c.moveUpTooltip=function(){return"művész mozogjon felfele."},c.moveTooltip=function(){return"mozogjon a művész."},c.nextLevel=function(){return"Gratulálunk! Teljesítetted ezt a feladványt."},c.no=function(){return"nem"},c.numBlocksNeeded=function(){return"Ezt a puzzle-t a(z) % 1 blokkal megoldható."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"recsegő hang lejátszása"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"pont elvesztése hang lejátszása"},c.playSoundLosePoint2=function(){return"pont elvesztése hang 2 lejátszása"},c.playSoundRetro=function(){return"retro hang lejátszása"},c.playSoundRubber=function(){return"gumi hang lejátszása"},c.playSoundSlap=function(){return"pofon hang lejátszása"},c.playSoundTooltip=function(){return"Kiválasztott hang lejátszása."},c.playSoundWinPoint=function(){return"pontnyerés hang lejátszása"},c.playSoundWinPoint2=function(){return"pontnyerés hang 2 lejátszása"},c.playSoundWood=function(){return"fa hang lejátszása"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"balra fölülre"},c.positionTopCenter=function(){return"felülre középre"},c.positionTopRight=function(){return"jobbra felülre"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"bal középsőre "},c.positionMiddleCenter=function(){return"közép-középre"},c.positionMiddleRight=function(){return"jobbra középre "},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"bal alsó pozícióba"},c.positionBottomCenter=function(){return"alsó középső helyzetbe"},c.positionBottomRight=function(){return"a jobb alsó pozícióba"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"véletlenszerű helyzetbe"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"véletlenszerű"},c.reinfFeedbackMsg=function(){return'Nyomja meg a "Játszd újra" gombot hogy visszatérj a saját játékodhoz.'},c.repeatForever=function(){return"végtelen ismétlés"},c.repeatDo=function(){return"csináld"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"mondd"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Ugorjon fel egy beszéd buborék, a megadott szereplő szövegével."},c.scoreText=function(a){return"Pontszám: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"változó háttér beállítása"},c.setBackgroundBlack=function(){return"fekete háttér beállítása"},c.setBackgroundCave=function(){return"barlangos háttér beállítása "},c.setBackgroundCloudy=function(){return"felhős háttér beállítása"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"éjszakai háttér beállítása"},c.setBackgroundUnderwater=function(){return"víz alatti háttér beállítása"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Add meg a háttér képet"},c.setScoreText=function(){return"Pontszám beállítása"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Nézd meg a történetet amit csináltam. Magam írtam a code.org felületén."},c.shareGame=function(){return"Oszd meg a történetedet:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"szöveg"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"beállítás"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"állj"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Szereplő mozgásának megállítása."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"Lefele nyílnál"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"Amikor a történet kezdődik"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"balra nyíl esetén"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"jobbra nyíl esetén"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"amikor a szereplőre kattintunk"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"igen"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/id_id/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/id_id/common":40,"../../locale/id_id/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/id_id/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/id_id/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/id_id/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/id_id/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/id_id/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/id_id/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.id=function(){return"other"},c.and=function(){return"dan"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Aksi"},c.catColour=function(){return"Warna"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"List"},c.catLoops=function(){return"Loop"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Fungsi"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Variabel"},c.codeTooltip=function(){return"Lihat kode JavaScript."},c.continue=function(){return"Ayo lanjutkan!"},c.dialogCancel=function(){return"Batal"},c.dialogOK=function(){return"Oke!"},c.directionNorthLetter=function(){return"U"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"T"},c.directionWestLetter=function(){return"B"},c.end=function(){return"akhir"},c.emptyBlocksErrorMsg=function(){return'Blok "Ulangi" atau blok "Jika" membutuhkan blok lain di dalamnya supaya bisa bekerja. Pastikan blok yang berada didalam diletakkan secara pas.'},c.emptyFunctionBlocksErrorMsg=function(){return"Blok fungsi membutuhkan blok lain di dalamnya agar dapat bekerja."},c.extraTopBlocks=function(){return"Anda memiliki blok ekstra yang tidak melekat pada sebuah blok acara (event)."},c.finalStage=function(){return"Horee! Anda berhasil menyelesaikan tahap akhir."},c.finalStageTrophies=function(a){return"Horee! Anda berhasil menyelesaikan tahap akhir dan memenangkan "+p(a,"numTrophies",0,"id",{one:"piala",other:"piala "+n(a,"numTrophies")})+"."},c.finish=function(){return"Selesai"},c.generatedCodeInfo=function(a){return"Bahkan Universitas mengajar blok berbasis pengkodean (misalnya, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Tetapi di bawah tenda, blok Anda telah berkumpul dapat juga ditunjukkan dalam JavaScript, dunia yang paling banyak digunakan pengkodean bahasa:"},c.hashError=function(){return"Maaf, '%1' tidak sesuai dengan program yang disimpan."},c.help=function(){return"Tolong"},c.hintTitle=function(){return"Tips:"},c.jump=function(){return"lompat"},c.levelIncompleteError=function(){return"Anda telah gunakan semua jenis blok yang diperlukan tetapi tidak dengan cara yang tepat."},c.listVariable=function(){return"list"},c.makeYourOwnFlappy=function(){return'Buatlah permainan "Flappy" versi Anda sendiri'},c.missingBlocksErrorMsg=function(){return"Cobalah satu atau lebih blok di bawah untuk memecahkan teka-teki ini."},c.nextLevel=function(a){return"Horee! Anda berhasil menyelesaikan teka-teki ke "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Horee! Anda berhasil menyelesaikan teka-teki ke "+v(a,"puzzleNumber")+" dan memenangkan "+p(a,"numTrophies",0,"id",{satu:"a trophy",other:"trophies "+n(a,"numTrophies")})+"."},c.nextStage=function(a){return"Selamat! Anda telah menyelesaikan "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Horee! Anda berhasil menyelesaikan teka-teki ke "+v(a,"stageNumber")+" dan memenangkan "+p(a,"numTrophies",0,"id",{one:"piala",other:n(a,"numTrophies")+" piala"})+"."},c.numBlocksNeeded=function(a){return"Horee! Anda berhasil menyelesaikan teka-teki ke "+v(a,"puzzleNumber")+". (Namun, sebetulnya Anda cukup gunakan hanya "+p(a,"numBlocks",0,"id",{one:"1 blok",other:"blok "+n(a,"numBlocks")})+".)"},c.numLinesOfCodeWritten=function(a){return"Anda baru saja menulis "+p(a,"numLines",0,"id",{one:"1 baris",other:n(a,"numLines")+" baris"})+" kode!"},c.play=function(){return"mainkan"},c.puzzleTitle=function(a){return"Teka-teki ke "+v(a,"puzzle_number")+" dari "+v(a,"stage_total")},c.repeat=function(){return"ulangi"},c.resetProgram=function(){return"Kembali ke awal"},c.runProgram=function(){return"Jalankan"},c.runTooltip=function(){return"Jalankan program yang dibuat di blok ruang kerja."},c.score=function(){return"Skor"},c.showCodeHeader=function(){return"Tampilkan kode"},c.showGeneratedCode=function(){return"Tampilkan kode"},c.subtitle=function(){return"Perangkat pemrograman visual"},c.textVariable=function(){return"teks"},c.tooFewBlocksMsg=function(){return"Anda telah gunakan semua jenis blok diperlukan, tetapi cobalah menggunakan lebih banyak blok-blok ini supaya anda dapat menyelesaikan teka-teki ini."},c.tooManyBlocksMsg=function(){return"Teka-teki ini dapat diselesaikan dengan blok < x id = 'START_SPAN' /> < x id = 'END_SPAN'/>."},c.tooMuchWork=function(){return"Anda membuat saya melakukan terlalu banyak pekerjaan! Bisakan Anda coba membuat pengulangan yang lebih sedikit?"},c.toolboxHeader=function(){return"Blok"},c.openWorkspace=function(){return"Cara kerjanya"},c.totalNumLinesOfCodeWritten=function(a){return"Total keseluruhan: "+p(a,"numLines",0,"id",{one:"1 baris",other:n(a,"numLines")+" baris"})+" kode."},c.tryAgain=function(){return"Ayo coba lagi!"},c.hintRequest=function(){return"Lihat petunjuk"},c.backToPreviousLevel=function(){return"Kembali ke teka-teki sebelumnya"},c.saveToGallery=function(){return"Simpan ke galeri Anda"},c.savedToGallery=function(){return"Simpan ke galeri Anda!"},c.typeCode=function(){return"Ketik kode JavaScript di bawah instruksi ini."},c.typeFuncs=function(){return"Fungsi yang tersedia: %1"},c.typeHint=function(){return"Perhatikan bahwa tanda kurung dan titik koma diperlukan."},c.workspaceHeader=function(){return"Rakitlah blok Anda disini: "},c.infinity=function(){return"∞"},c.rotateText=function(){return"Memutar perangkat anda."},c.orientationLock=function(){return"Matikan orientasi kunci dalam pengaturan perangkat."},c.wantToLearn=function(){return"Ingin belajar untuk mengkode?"},c.watchVideo=function(){return"Tonton Videonya"},c.when=function(){return"ketika"},c.whenRun=function(){return"ketika dijalankan"},c.tryHOC=function(){return'Cobalah "Hour of Code"'},c.signup=function(){return"Daftarlah untuk mengikuti kursus introduksi"},c.hintHeader=function(){return"Berikut adalah tip:"},c.genericFeedback=function(){return"Lihatlah hasil anda dan cobalah untuk memperbaiki program Anda."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.id=function(){return"other"},c.actor=function(){return"pelaku"},c.catActions=function(){return"tindakan"},c.catControl=function(){return"pengulangan"},c.catEvents=function(){return"kegiatan"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Fungsi"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Variabel"},c.changeScoreTooltip=function(){return"Menambah atau menghapus angka untuk Skor."},c.changeScoreTooltipK1=function(){return"Menambahkan poin untuk Skor."},c.continue=function(){return"Lanjutkan"},c.decrementPlayerScore=function(){return"Mengapus poin"},c.defaultSayText=function(){return"ketik di sini"},c.emotion=function(){return"suasana hati"},c.finalLevel=function(){return"Horee! Anda telah memecahkan teka-teki akhir."},c.hello=function(){return"Halo"},c.helloWorld=function(){return"Halo dunia!"},c.incrementPlayerScore=function(){return"Mengukur titik"},c.makeProjectileDisappear=function(){return"menghilang"},c.makeProjectileBounce=function(){return"melambung"},c.makeProjectileBlueFireball=function(){return"membuat bola api biru\n"},c.makeProjectilePurpleFireball=function(){return"membuat bola api ungu"},c.makeProjectileRedFireball=function(){return"membuat bola api merah"},c.makeProjectileYellowHearts=function(){return"membuat bola api kuning"},c.makeProjectilePurpleHearts=function(){return"membuat hati ungu"},c.makeProjectileRedHearts=function(){return"membuat hati merah"},c.makeProjectileTooltip=function(){return"Membuat peluru yang baru saja bertabrakan menghilang atau memantul."},c.makeYourOwn=function(){return"Buat cerita Anda sendiri"},c.moveDirectionDown=function(){return"turun"},c.moveDirectionLeft=function(){return"kiri"},c.moveDirectionRight=function(){return"kanan"},c.moveDirectionUp=function(){return"atas"},c.moveDirectionRandom=function(){return"acak"},c.moveDistance25=function(){return"25 pixel"},c.moveDistance50=function(){return"50 pixel"},c.moveDistance100=function(){return"100 piksel"},c.moveDistance200=function(){return"200 piksel"},c.moveDistance400=function(){return"400 piksel"},c.moveDistancePixels=function(){return"piksel"},c.moveDistanceRandom=function(){return"acak piksel"},c.moveDistanceTooltip=function(){return"memindahkan karakter dengan jarak dan arah yang telah ditentukan."},c.moveSprite=function(){return"bergerak"},c.moveSpriteN=function(){return"pindahkan karakter."},c.moveDown=function(){return"Pindahkan ke bawah"},c.moveDownTooltip=function(){return"menurunkan karakter."},c.moveLeft=function(){return"gerak kiri"},c.moveLeftTooltip=function(){return"memindahkan karakter ke kiri."},c.moveRight=function(){return"pindah kanan"},c.moveRightTooltip=function(){return"pindahkan karakter ke kanan."},c.moveUp=function(){return"gerak ke atas"},c.moveUpTooltip=function(){return"Pindahkan aktor ke atas."},c.moveTooltip=function(){return"pindahkan aktor."},c.nextLevel=function(){return"Horee! Anda telah menyelesaikan teka-teki ini."},c.no=function(){return"Tidak"},c.numBlocksNeeded=function(){return"Teka-teki ini dapat diselesaikan dengan %1 blok."},c.ouchExclamation=function(){return"Aduh!"},c.playSoundCrunch=function(){return'mainkan bunyi "crunch"'},c.playSoundGoal1=function(){return"Mainkan suara gol 1"},c.playSoundGoal2=function(){return"Mainkan suara gol 2"},c.playSoundHit=function(){return"Mainkan suara pukulan"},c.playSoundLosePoint=function(){return"Mainkan suara kehilangan poin"},c.playSoundLosePoint2=function(){return"Mainkan suara kehilangan poin 2"},c.playSoundRetro=function(){return"Mainkan suara retro "},c.playSoundRubber=function(){return"Mainkan suara karet"},c.playSoundSlap=function(){return"Putar suara tamparan"},c.playSoundTooltip=function(){return"Mainkan bunyi pilihan."},c.playSoundWinPoint=function(){return"Putar suara titik menang"},c.playSoundWinPoint2=function(){return"Putar suara titik menang 2"},c.playSoundWood=function(){return"Bermain suara kayu "},c.positionOutTopLeft=function(){return"ke posisi kiri atas di atas "},c.positionOutTopRight=function(){return"ke posisi kanan atas di atas "},c.positionTopOutLeft=function(){return"ke atas posisi kiri luar "},c.positionTopLeft=function(){return"ke atas posisi kiri"},c.positionTopCenter=function(){return"ke atas posisi tengah"},c.positionTopRight=function(){return"ke atas posisi kanan"},c.positionTopOutRight=function(){return"ke atas posisi kanan luar"},c.positionMiddleLeft=function(){return"ke tengah posisi kiri"},c.positionMiddleCenter=function(){return"ke tengah posisi tengah"},c.positionMiddleRight=function(){return"ke tengah posisi kanan"},c.positionBottomOutLeft=function(){return"ke bawah posisi kiri luar"},c.positionBottomLeft=function(){return"ke bawah posisi kiri"},c.positionBottomCenter=function(){return"ke bawah posisi tengah"},c.positionBottomRight=function(){return"ke bawah posisi kanan"},c.positionBottomOutRight=function(){return"ke bawah posisi kanan luar"},c.positionOutBottomLeft=function(){return"ke bawah bagian bawah posisi kiri"},c.positionOutBottomRight=function(){return"ke bawah bagian bawah sebelah kanan"},c.positionRandom=function(){return"ke posisi acak"},c.projectileBlueFireball=function(){return"bola api biru"},c.projectilePurpleFireball=function(){return"bola api ungu"},c.projectileRedFireball=function(){return"bola api merah"},c.projectileYellowHearts=function(){return"hati kuning"},c.projectilePurpleHearts=function(){return"hati ungu"},c.projectileRedHearts=function(){return"hati merah"},c.projectileRandom=function(){return"acak"},c.reinfFeedbackMsg=function(){return'Anda dapat menekan tombol "Coba lagi" untuk kembali bermain.'},c.repeatForever=function(){return"Ulangi selamanya"},c.repeatDo=function(){return"kerjakan"},c.repeatForeverTooltip=function(){return"jalankan tindakan-tindakan dalam blok ini saat cerita masih berjalan"},c.saySprite=function(){return"mengatakan"},c.saySpriteN=function(a){return"aktor "+v(a,"spriteIndex")+" mengatakan"},c.saySpriteTooltip=function(){return"Munculkan pop up dengan teks dari aktor tertentu."},c.scoreText=function(a){return"Nilai: "+v(a,"playerScore")},c.setBackground=function(){return"atur latar belakang"},c.setBackgroundRandom=function(){return"tetapkan latar belakang acak"},c.setBackgroundBlack=function(){return"menetapkan latar belakang hitam"},c.setBackgroundCave=function(){return"set latar belakang gua"},c.setBackgroundCloudy=function(){return"menetapkan latar belakang berawan"},c.setBackgroundHardcourt=function(){return"set latar belakang hardcourt"},c.setBackgroundNight=function(){return"atur latar belakang malam hari"},c.setBackgroundUnderwater=function(){return"menetapkan latar belakang bawah air"},c.setBackgroundCity=function(){return"atur latar belakang kota"},c.setBackgroundDesert=function(){return"atur latar belakang padang pasir"},c.setBackgroundRainbow=function(){return"atur latar belakang pelangi"},c.setBackgroundSoccer=function(){return"atur latar belakang sepak bola"},c.setBackgroundSpace=function(){return"atur latar belakang luar angkasa"},c.setBackgroundTennis=function(){return"atur latar belakang tennis"},c.setBackgroundWinter=function(){return"atur latar belakang musim dingin"},c.setBackgroundTooltip=function(){return"tetapkan latar belakang gambar"},c.setScoreText=function(){return"atur nilai"},c.setScoreTextTooltip=function(){return"atur teks yang ditampilkan di area skor"},c.setSpriteEmotionAngry=function(){return"menjadi suasana hati marah"},c.setSpriteEmotionHappy=function(){return"menjadi suasana hati bahagia"},c.setSpriteEmotionNormal=function(){return"menjadi suasana yang normal"},c.setSpriteEmotionRandom=function(){return"menjadi suasana hati acak"},c.setSpriteEmotionSad=function(){return"menjadi suasana hati sedih"},c.setSpriteEmotionTooltip=function(){return"Tetapkan suasana hati aktor"},c.setSpriteAlien=function(){return"menjadi gambar alien"},c.setSpriteBat=function(){return"untuk ke gambar kelelawar"},c.setSpriteBird=function(){return"untuk ke gambar burung"},c.setSpriteCat=function(){return"menjadi sebuah gambar kucing"},c.setSpriteCaveBoy=function(){return"menjadi gambar anak gua laki-laki"},c.setSpriteCaveGirl=function(){return"menjadi gambar anak gua perempuan"},c.setSpriteDinosaur=function(){return"menjadi gambar dinosaurus"},c.setSpriteDog=function(){return"menjadi gambar anjing"},c.setSpriteDragon=function(){return"untuk ke gambar naga"},c.setSpriteGhost=function(){return"menjadi gambar hantu"},c.setSpriteHidden=function(){return"untuk gambar yang tersembunyi"},c.setSpriteHideK1=function(){return"Sembunyikan"},c.setSpriteKnight=function(){return"menjadi gambar knight"},c.setSpriteMonster=function(){return"menjadi gambar raksasa"},c.setSpriteNinja=function(){return"menjadi gambar ninja bertopeng"},c.setSpriteOctopus=function(){return"ke gambar gurita"},c.setSpritePenguin=function(){return"menjadi gambar pinguin"},c.setSpritePirate=function(){return"menjadi gambar bajak laut"},c.setSpritePrincess=function(){return"menjadi gambar putri"},c.setSpriteRandom=function(){return"untuk gambar yang acak"},c.setSpriteRobot=function(){return"menjadi gambar robot"},c.setSpriteShowK1=function(){return"tampilkan "},c.setSpriteSpacebot=function(){return"menjadi gambar robot luar angkasa"},c.setSpriteSoccerGirl=function(){return"menjadi gambar gadis sepakbola"},c.setSpriteSoccerBoy=function(){return"menjadi gambar laki-laki sepakbola"},c.setSpriteSquirrel=function(){return"untuk ke gambar tupai"},c.setSpriteTennisGirl=function(){return"menjadi gambar perempuan tenis"},c.setSpriteTennisBoy=function(){return"menjadi gambar laki-laki tenis"},c.setSpriteUnicorn=function(){return"menjadi gambar unicorn"},c.setSpriteWitch=function(){return"menjadi gambar penyihir"},c.setSpriteWizard=function(){return"untuk ke gambar penyihir"},c.setSpritePositionTooltip=function(){return"gerakkan langsung aktor ke tempat yang ditentukan"},c.setSpriteK1Tooltip=function(){return"tampilkan atau sembunyikan aktor tertentu"},c.setSpriteTooltip=function(){return"atur gambar aktor"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"untuk kecepatan acak"},c.setSpriteSpeedVerySlow=function(){return"untuk kecepatan sangat lambat"},c.setSpriteSpeedSlow=function(){return"untuk kecepatan lambat"},c.setSpriteSpeedNormal=function(){return"untuk kecepatan normal"},c.setSpriteSpeedFast=function(){return"untuk kecepatan tinggi"},c.setSpriteSpeedVeryFast=function(){return"untuk kecepatan sangat cepat"},c.setSpriteSpeedTooltip=function(){return"atur kecepatan aktor"},c.setSpriteZombie=function(){return"menjadi gambar zombie"},c.shareStudioTwitter=function(){return"Periksalah cerita saya dibuat. Saya menulis itu sendiri dengan @codeorg"},c.shareGame=function(){return"Berbagi cerita Anda:"},c.showTitleScreen=function(){return"Tampilkan layar judul"},c.showTitleScreenTitle=function(){return"judul"},c.showTitleScreenText=function(){return"teks"},c.showTSDefTitle=function(){return"Ketik Judul Disini"},c.showTSDefText=function(){return"Ketik teks disini"},c.showTitleScreenTooltip=function(){return"Tampilkan layar judul dengan judul dan teks terkait."},c.setSprite=function(){return"atur"},c.setSpriteN=function(){return"pasang aktor\n"},c.soundCrunch=function(){return"menjongkok"},c.soundGoal1=function(){return"tujuan 1"},c.soundGoal2=function(){return"tujuan 2"},c.soundHit=function(){return"kenai"},c.soundLosePoint=function(){return"poin kekalahan"},c.soundLosePoint2=function(){return"poin kekalahan 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"karet"},c.soundSlap=function(){return"tampar"},c.soundWinPoint=function(){return"poin menang"},c.soundWinPoint2=function(){return"poin menang 2"},c.soundWood=function(){return"kayu"},c.speed=function(){return"kecepatan"},c.stopSprite=function(){return"Stop"},c.stopSpriteN=function(){return"berhentikan aktor"},c.stopTooltip=function(){return"hentikan gerakan seorang pemeran."},c.throwSprite=function(){return"Lempar"},c.throwSpriteN=function(){return"aktor tersebut melempar"},c.throwTooltip=function(){return"melempar sebuah objek ke aktor tertentu"},c.vanish=function(){return"menghilang"},c.vanishActorN=function(a){return"menghilangkan aktor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Lenyapkan aktor."},c.waitFor=function(){return"menunggu untuk"},c.waitSeconds=function(){return"detik"},c.waitForClick=function(){return"menunggu untuk klik"},c.waitForRandom=function(){return"tunggu untuk sesuai yang acak"},c.waitForHalfSecond=function(){return"tunggu untuk setengah detik"},c.waitFor1Second=function(){return"tunggu 1 detik"},c.waitFor2Seconds=function(){return"tunggu 2 detik"},c.waitFor5Seconds=function(){return"tunggu selama 5 detik"},c.waitFor10Seconds=function(){return"tunggu selama 10 detik"},c.waitParamsTooltip=function(){return"tunggu sampai angka tertentu, atau gunakan angka nol sampai suatu klik terjadi"},c.waitTooltip=function(){return"tunggu untuk waktu yang tertentu atau tunggu sampai suatu klik terjadi."},c.whenArrowDown=function(){return"panah kebawah"},c.whenArrowLeft=function(){return"panah kekiri"},c.whenArrowRight=function(){return"panah kekanan"},c.whenArrowUp=function(){return"panah keatas"},c.whenArrowTooltip=function(){return"Lakukan aksi dibawah ini ketika panah yang tertentu sudah terpencet"},c.whenDown=function(){return"Ketika panah bawah"},c.whenDownTooltip=function(){return"Laksanakan tindakan-tindakan di bawah ini ketika tombol panah kebawah ditekan."},c.whenGameStarts=function(){return"Ketika cerita dimulai"},c.whenGameStartsTooltip=function(){return"Melaksanakan tindakan-tindakan di bawah ini ketika cerita dimulai."},c.whenLeft=function(){return"Ketika anak panah kiri"},c.whenLeftTooltip=function(){return"Laksanakan tindakan-tindakan di bawah ini ketika tombol panah kiri ditekan."},c.whenRight=function(){return"Ketika anak panah kanan"},c.whenRightTooltip=function(){return"Laksanakan tindakan-tindakan di bawah ini ketika tombol panah kanan ditekan."},c.whenSpriteClicked=function(){return"ketika aktor meng-klik"},c.whenSpriteClickedN=function(){return"ketika aktor klik"},c.whenSpriteClickedTooltip=function(){return"Laksanakan tindakan di bawah ini ketika aktor sudah di klik"},c.whenSpriteCollidedN=function(){return"ketika aktor"},c.whenSpriteCollidedTooltip=function(){return"Lakukan kegiatan di bawah ketika seorang aktor menyentuh aktor lainnya"},c.whenSpriteCollidedWith=function(){return"menyentuh"},c.whenSpriteCollidedWithN=function(){return"menyentuh aktor"},c.whenSpriteCollidedWithBlueFireball=function(){return"menyentuh bola api biru"},c.whenSpriteCollidedWithPurpleFireball=function(){return"menyentuh bola api ungu"},c.whenSpriteCollidedWithRedFireball=function(){return"menyentuh bola api merah"},c.whenSpriteCollidedWithYellowHearts=function(){return"menyentuh bola api kuning"},c.whenSpriteCollidedWithPurpleHearts=function(){return"menyentuh bola api ungu"},c.whenSpriteCollidedWithRedHearts=function(){return"menyentuh bola api merah"},c.whenSpriteCollidedWithBottomEdge=function(){return"menyentuh ujung bawah"},c.whenSpriteCollidedWithLeftEdge=function(){return"menyentuh ujung kiri"},c.whenSpriteCollidedWithRightEdge=function(){return"menyentuh ujung kanan"},c.whenSpriteCollidedWithTopEdge=function(){return"menyentuh ujung atas"},c.whenUp=function(){return"Bila tanda panah atas"},c.whenUpTooltip=function(){return"Laksanakan tindakan-tindakan di bawah ini ketika tombol panah keatas ditekan."},c.yes=function(){return"Ya"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/is_is/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/is_is/common":40,"../../locale/is_is/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/is_is/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/is_is/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/is_is/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/is_is/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/is_is/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/is_is/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.is=function(a){return 1===a?"one":"other"},c.and=function(){return"og"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Aðgerðir"},c.catColour=function(){return"Litir"},c.catLogic=function(){return"Rökvísi"},c.catLists=function(){return"Listar"},c.catLoops=function(){return"Lykkjur"},c.catMath=function(){return"Reikningur"},c.catProcedures=function(){return"Föll"},c.catText=function(){return"Texti"},c.catVariables=function(){return"Breytur"},c.codeTooltip=function(){return"Sjá samsvarandi JavaScript kóða."},c.continue=function(){return"Áfram"},c.dialogCancel=function(){return"Hætta við"},c.dialogOK=function(){return"Í lagi"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"A"},c.directionWestLetter=function(){return"V"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Kubbarnir "endurtaka" og "ef" verða að innihalda aðra kubba til að virka. Gættu þess að innri kubburinn smellpassi í ytri kubbinn.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Þú hefur auka kubba sem ekki tengjast atvikakubbi."},c.finalStage=function(){return"Til hamingju! Þú hefur klárað síðasta áfangann."},c.finalStageTrophies=function(a){return"Til hamingju! Þú hefur klárað síðasta áfangann og unnið "+p(a,"numBikara",0,"is",{one:"bikar",other:n(a,"numBikara")+" bikara"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"Kubbana í forritinu þínu er líka hægt að umbreyta í JavaScript, sem er útbreiddasta forritunarmál í heiminum:"},c.hashError=function(){return"Því miður finnst ekkert vistað forrit '%1'."},c.help=function(){return"Hjálp"},c.hintTitle=function(){return"Vísbending:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Þú ert að nota allar nauðsynlegu tegundirnar af kubbum en ekki á réttan hátt."},c.listVariable=function(){return"listi"},c.makeYourOwnFlappy=function(){return"Búðu til þinn eigin(n) Flappy leik"},c.missingBlocksErrorMsg=function(){return"Reyndu einn eða fleiri af kubbunum hér fyrir neðan til að leysa þessa þraut."},c.nextLevel=function(a){return"Til hamingju! Þú hefur leyst þraut "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Til hamingju! Þú hefur leyst þraut "+v(a,"puzzleNumber")+" og unnið "+p(a,"numTrophies",0,"is",{one:"bikar",other:n(a,"numTrophies")+" bikara"})+"."},c.nextStage=function(a){return"Til hamingju! Þú hefur lokið áfanga "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Til hamingju! Þú kláraðir áfanga "+v(a,"stageNumber")+" og vannst "+p(a,"numTrophies",0,"is",{one:"bikar",other:n(a,"numTrophies")+" bikara"})+"."},c.numBlocksNeeded=function(a){return"Til hamingju! Þú kláraðir þraut "+v(a,"puzzleNumber")+". (En þú hefðir getað notað bara "+p(a,"numBlocks",0,"is",{one:"1 kubb",other:n(a,"numBlocks")+" kubba"})+".)" },c.numLinesOfCodeWritten=function(a){return"Þú náðir að skrifa "+p(a,"numLines",0,"is",{one:"1 línu",other:n(a,"numLines")+" línur"})+" af kóða!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Þraut "+v(a,"puzzle_number")+" af "+v(a,"stage_total")},c.repeat=function(){return"endurtaka"},c.resetProgram=function(){return"Endurstilla"},c.runProgram=function(){return"Keyra forrit"},c.runTooltip=function(){return"Keyra forritið sem samanstendur af kubbunum á vinnusvæðinu."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Sýna kóða"},c.showGeneratedCode=function(){return"Sýna kóða"},c.subtitle=function(){return"sjónrænt forritunarumhverfi"},c.textVariable=function(){return"texti"},c.tooFewBlocksMsg=function(){return"Þú ert að nota allar nauðsynlegu tegundirnar af kubbum, en reyndu að nota fleiri svoleiðis kubba til að leysa þessa þraut."},c.tooManyBlocksMsg=function(){return"Þessa þraut er hægt að leysa með kubbum."},c.tooMuchWork=function(){return"Þú lagðir á mig mjög mikla vinnu! Gætirðu reynt að nota færri endurtekningar?"},c.toolboxHeader=function(){return"Kubbar"},c.openWorkspace=function(){return"Hvernig það virkar"},c.totalNumLinesOfCodeWritten=function(a){return"Samtals: "+p(a,"numLines",0,"is",{one:"1 lína",other:n(a,"numLines")+" línur"})+" af kóða."},c.tryAgain=function(){return"Reyna aftur"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Til baka á fyrra stig"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Skrifaðu JavaScript kóða þinn fyrir neðan þessar leiðbeiningar."},c.typeFuncs=function(){return"Tiltæk föll:%1"},c.typeHint=function(){return"Athugaðu að svigarnir og semikommurnar eru nauðsynlegar."},c.workspaceHeader=function(){return"Settu kubbana saman hér: "},c.infinity=function(){return"Óendanleiki"},c.rotateText=function(){return"Snúðu tækinu þínu."},c.orientationLock=function(){return"Slökktu á stefnulæsingu í stillingum tækis."},c.wantToLearn=function(){return"Viltu læra að kóða?"},c.watchVideo=function(){return"Horfa á videóið"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Prófa Kóðun í klukkustund"},c.signup=function(){return"Skráning á inngangsnámskeiðið"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.is=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Aðgerðir"},c.catControl=function(){return"Lykkjur"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Rökvísi"},c.catMath=function(){return"Reikningur"},c.catProcedures=function(){return"Föll"},c.catText=function(){return"Texti"},c.catVariables=function(){return"Breytur"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Áfram"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Til hamingju! Þú hefur leyst síðustu þrautina."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"skora stig"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"eitthvert"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixlar"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"færa niður"},c.moveDownTooltip=function(){return"Færa spaðann niður."},c.moveLeft=function(){return"færa til vinstri"},c.moveLeftTooltip=function(){return"Færa spaðann til vinstri."},c.moveRight=function(){return"færa til hægri"},c.moveRightTooltip=function(){return"Færa spaðann til hægri."},c.moveUp=function(){return"færa upp"},c.moveUpTooltip=function(){return"Færa spaðann upp."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Til hamingju! Þú hefur klárað þessa þraut."},c.no=function(){return"Nei"},c.numBlocksNeeded=function(){return"Þessa þraut er hægt að leysa með %1 kubbum."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"spila brothljóð"},c.playSoundGoal1=function(){return"spila markhljóð 1"},c.playSoundGoal2=function(){return"spila markhljóð 2"},c.playSoundHit=function(){return"spila áreksturshljóð"},c.playSoundLosePoint=function(){return"spila stigatapshljóð 1"},c.playSoundLosePoint2=function(){return"spila stigatapshljóð 2"},c.playSoundRetro=function(){return"spila retro hljóð"},c.playSoundRubber=function(){return"spila gúmmíhljóð"},c.playSoundSlap=function(){return"spila skellhljóð"},c.playSoundTooltip=function(){return"Spila valið hljóð."},c.playSoundWinPoint=function(){return"spila stigaskorshljóð 1"},c.playSoundWinPoint2=function(){return"spila stigaskorshljóð 2"},c.playSoundWood=function(){return"spila viðarhljóð"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"eitthvert"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"gera"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Stig alls: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Stillir bakgrunnsmynd"},c.setScoreText=function(){return"setja stig á"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"texti"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"setja í"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"þegar niður ör"},c.whenDownTooltip=function(){return"Gera aðgerðirnar fyrir neðan þegar ýtt er á örvarlykil niður."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"þegar vinstri ör"},c.whenLeftTooltip=function(){return"Gera aðgerðirnar fyrir neðan þegar ýtt er á örvarlykil til vinstri."},c.whenRight=function(){return"þegar hægri ör"},c.whenRightTooltip=function(){return"Gera aðgerðirnar fyrir neðan þegar ýtt er á örvarlykil til hægri."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"þegar upp ör"},c.whenUpTooltip=function(){return"Gera aðgerðirnar fyrir neðan þegar ýtt er á örvarlykil upp."},c.yes=function(){return"Já"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j]; if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/it_it/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/it_it/common":40,"../../locale/it_it/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/it_it/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/it_it/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/it_it/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/it_it/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/it_it/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/it_it/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.it=function(a){return 1===a?"one":"other"},c.and=function(){return"e"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Azioni"},c.catColour=function(){return"Colore"},c.catLogic=function(){return"Logica"},c.catLists=function(){return"Liste"},c.catLoops=function(){return"Ripetizioni"},c.catMath=function(){return"Matematica"},c.catProcedures=function(){return"Funzioni"},c.catText=function(){return"Testo"},c.catVariables=function(){return"Variabili"},c.codeTooltip=function(){return"Guarda il codice JavaScript generato."},c.continue=function(){return"Prosegui"},c.dialogCancel=function(){return"Annulla"},c.dialogOK=function(){return"Ok"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"O"},c.end=function(){return"fine"},c.emptyBlocksErrorMsg=function(){return'Il blocco "ripeti" o "se" deve avere all\'interno altri blocchi per poter funzionare. Assicurati che i blocchi interni siano inseriti correttamente all\'interno del blocco principale.'},c.emptyFunctionBlocksErrorMsg=function(){return"Una funzione ha bisogno di altri blocchi al suo interno."},c.extraTopBlocks=function(){return"Ci sono blocchi che non sono attaccati ad un blocco evento."},c.finalStage=function(){return"Complimenti! Hai completato l'ultima lezione."},c.finalStageTrophies=function(a){return"Complimenti! Hai completato l'ultima lezione e vinto "+p(a,"numTrophies",0,"it",{one:"un trofeo",other:n(a,"numTrophies")+" trofei"})+"."},c.finish=function(){return"Condividi"},c.generatedCodeInfo=function(a){return"Anche le migliori università (p.es., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+") insegnano la programmazione visuale con i blocchi. Ma i blocchi che metti insieme possono essere rappresentati anche in JavaScript, uno dei linguaggi di programmazione più usati al mondo:"},c.hashError=function(){return"Siamo spiacenti, '%1' non corrisponde ad alcun programma salvato."},c.help=function(){return"Aiuto"},c.hintTitle=function(){return"Suggerimento:"},c.jump=function(){return"salta"},c.levelIncompleteError=function(){return"Stai usando tutti i tipi di blocchi necessari, ma non nel modo giusto."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Costruisci la tua versione del gioco Flappy"},c.missingBlocksErrorMsg=function(){return"Prova uno o più dei blocchi che trovi qui sotto per risolvere questo esercizio."},c.nextLevel=function(a){return"Complimenti! Hai completato l'esercizio "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Complimenti! Hai completato l'esercizio "+v(a,"puzzleNumber")+" e vinto "+p(a,"numTrophies",0,"it",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Complimenti! Hai completato la lezione "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Complimenti! Hai completato la lezione "+v(a,"stageName")+" e vinto "+p(a,"numTrophies",0,"it",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Complimenti! Hai completato l'esercizio "+v(a,"puzzleNumber")+". (Avresti però potuto usare solo "+p(a,"numBlocks",0,"it",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"Hai appena scritto "+p(a,"numLines",0,"it",{one:"1 linea",other:n(a,"numLines")+" linee"})+" di codice!"},c.play=function(){return"inizia"},c.puzzleTitle=function(a){return"Esercizio "+v(a,"puzzle_number")+" di "+v(a,"stage_total")},c.repeat=function(){return"ripeti"},c.resetProgram=function(){return"Ricomincia"},c.runProgram=function(){return"Esegui"},c.runTooltip=function(){return"Esegui il programma definito dai blocchi nell'area di lavoro."},c.score=function(){return"punteggio"},c.showCodeHeader=function(){return"Mostra il codice"},c.showGeneratedCode=function(){return"Mostra il codice"},c.subtitle=function(){return"un ambiente di programmazione visuale"},c.textVariable=function(){return"testo"},c.tooFewBlocksMsg=function(){return"Stai usando tutti i tipi di blocchi necessari, ma prova usando più blocchi o usandoli diversamente."},c.tooManyBlocksMsg=function(){return"Questo esercizio può essere risolto con blocchi."},c.tooMuchWork=function(){return"Mi hai fatto fare un sacco di lavoro! Puoi provare a farmi fare meno ripetizioni?"},c.toolboxHeader=function(){return"Blocchi"},c.openWorkspace=function(){return"Come funziona"},c.totalNumLinesOfCodeWritten=function(a){return"Totale complessivo: "+p(a,"numLines",0,"it",{one:"1 linea",other:n(a,"numLines")+" linee"})+" di codice."},c.tryAgain=function(){return"Riprova"},c.hintRequest=function(){return"Vedere il suggerimento"},c.backToPreviousLevel=function(){return"Torna al livello precedente"},c.saveToGallery=function(){return"Salva nella tua galleria"},c.savedToGallery=function(){return"Salvato nella tua galleria!"},c.typeCode=function(){return"Digita il tuo codice JavaScript sotto queste istruzioni."},c.typeFuncs=function(){return"Funzioni disponibili: %1"},c.typeHint=function(){return"Sono necessarie le parentesi e i punto e virgola."},c.workspaceHeader=function(){return"Assembla i tuoi blocchi qui: "},c.infinity=function(){return"Infinito"},c.rotateText=function(){return"Ruota il dispositivo."},c.orientationLock=function(){return"Disattiva il blocco dell'orientamento nelle impostazioni del dispositivo."},c.wantToLearn=function(){return"Vuoi imparare a programmare?"},c.watchVideo=function(){return"Guarda il video"},c.when=function(){return"quando"},c.whenRun=function(){return'quando si clicca su "Esegui"'},c.tryHOC=function(){return"Prova l'Ora del Codice"},c.signup=function(){return"Iscriviti al corso introduttivo"},c.hintHeader=function(){return"Ecco un suggerimento:"},c.genericFeedback=function(){return"Verifica il risultato e prova a correggere il tuo programma."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.it=function(a){return 1===a?"one":"other"},c.actor=function(){return"personaggio"},c.catActions=function(){return"Azioni"},c.catControl=function(){return"Ripetizioni"},c.catEvents=function(){return"Eventi"},c.catLogic=function(){return"Logica"},c.catMath=function(){return"Matematica"},c.catProcedures=function(){return"Funzioni"},c.catText=function(){return"Testo"},c.catVariables=function(){return"Variabili"},c.changeScoreTooltip=function(){return"Aggiungi o rimuovi un punto dal punteggio."},c.changeScoreTooltipK1=function(){return"Aggiungi un punto al punteggio."},c.continue=function(){return"Prosegui"},c.decrementPlayerScore=function(){return"rimuovi un punto"},c.defaultSayText=function(){return"scrivi qua"},c.emotion=function(){return"umore"},c.finalLevel=function(){return"Complimenti! Hai risolto l'esercizio finale."},c.hello=function(){return"ciao"},c.helloWorld=function(){return"Ciao a tutti!"},c.incrementPlayerScore=function(){return"aggiungi un punto"},c.makeProjectileDisappear=function(){return"scompari"},c.makeProjectileBounce=function(){return"rimbalzo"},c.makeProjectileBlueFireball=function(){return"fai una palla di fuoco blu"},c.makeProjectilePurpleFireball=function(){return"fai una palla di fuoco viola"},c.makeProjectileRedFireball=function(){return"fai una palla di fuoco rossa"},c.makeProjectileYellowHearts=function(){return"fai dei cuori gialli"},c.makeProjectilePurpleHearts=function(){return"fai dei cuori viola"},c.makeProjectileRedHearts=function(){return"fai dei cuori rossi"},c.makeProjectileTooltip=function(){return"Fai scomparire o rimbalzare il proiettile appena urta."},c.makeYourOwn=function(){return"Crea La Tua Storia"},c.moveDirectionDown=function(){return"basso"},c.moveDirectionLeft=function(){return"sinistra"},c.moveDirectionRight=function(){return"destra"},c.moveDirectionUp=function(){return"alto"},c.moveDirectionRandom=function(){return"scelta a caso"},c.moveDistance25=function(){return"25 pixel"},c.moveDistance50=function(){return"50 pixel"},c.moveDistance100=function(){return"100 pixel"},c.moveDistance200=function(){return"200 pixel"},c.moveDistance400=function(){return"400 pixel"},c.moveDistancePixels=function(){return"pixel"},c.moveDistanceRandom=function(){return"pixel scelti a caso"},c.moveDistanceTooltip=function(){return"Sposta un personaggio della distanza specificata nella direzione specificata."},c.moveSprite=function(){return"sposta"},c.moveSpriteN=function(a){return"sposta il personaggio "+v(a,"spriteIndex")},c.moveDown=function(){return"sposta in basso"},c.moveDownTooltip=function(){return"Sposta un personaggio verso il basso."},c.moveLeft=function(){return"sposta a sinistra"},c.moveLeftTooltip=function(){return"Sposta un personaggio verso sinistra."},c.moveRight=function(){return"sposta a destra"},c.moveRightTooltip=function(){return"Sposta un personaggio verso destra."},c.moveUp=function(){return"sposta in alto"},c.moveUpTooltip=function(){return"Sposta un personaggio verso l'alto."},c.moveTooltip=function(){return"Sposta un personaggio."},c.nextLevel=function(){return"Complimenti! Hai completato questo esercizio."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"Questo esercizio può essere risolto con %1 blocchi."},c.ouchExclamation=function(){return"Ahi!"},c.playSoundCrunch=function(){return"riproduci il suono di uno sgranocchiamento"},c.playSoundGoal1=function(){return"riproduci il suono per un obiettivo raggiunto"},c.playSoundGoal2=function(){return"riproduci il suono per un obiettivo raggiunto (versione alternativa)"},c.playSoundHit=function(){return"riproduci il suono di un colpo"},c.playSoundLosePoint=function(){return"riproduci il suono di un punto perso"},c.playSoundLosePoint2=function(){return"riproduci il suono di un punto perso (versione alternativa)"},c.playSoundRetro=function(){return"riproduci un suono retrò"},c.playSoundRubber=function(){return"riproduci il suono della gomma"},c.playSoundSlap=function(){return"riproduci il suono di uno schiaffo"},c.playSoundTooltip=function(){return"Riproduci il suono scelto."},c.playSoundWinPoint=function(){return"riproduci il suono di un punto vinto"},c.playSoundWinPoint2=function(){return"riproduci il suono di un punto vinto (versione alternativa)"},c.playSoundWood=function(){return"riproduci il suono del legno"},c.positionOutTopLeft=function(){return"alla posizione a sinistra sopra la cima"},c.positionOutTopRight=function(){return"alla posizione a destra sopra la cima"},c.positionTopOutLeft=function(){return"alla posizione a sinistra esterna alla cima"},c.positionTopLeft=function(){return"alla posizione in alto a sinistra"},c.positionTopCenter=function(){return"alla posizione in alto al centro"},c.positionTopRight=function(){return"alla posizione in alto a destra"},c.positionTopOutRight=function(){return"alla posizione a destra esterna alla cima"},c.positionMiddleLeft=function(){return"alla posizione nel mezzo a sinistra"},c.positionMiddleCenter=function(){return"alla posizione nel mezzo al centro"},c.positionMiddleRight=function(){return"alla posizione nel mezzo a destra"},c.positionBottomOutLeft=function(){return"alla posizione a sinistra esterna al fondo"},c.positionBottomLeft=function(){return"alla posizione in basso a sinistra"},c.positionBottomCenter=function(){return"alla posizione in basso al centro"},c.positionBottomRight=function(){return"alla posizione in basso a destra"},c.positionBottomOutRight=function(){return"alla posizione a destra esterna al fondo"},c.positionOutBottomLeft=function(){return"alla posizione a sinistra sotto il fondo"},c.positionOutBottomRight=function(){return"alla posizione destra sotto il fondo"},c.positionRandom=function(){return"alla posizione scelta a caso"},c.projectileBlueFireball=function(){return"palla di fuoco blu"},c.projectilePurpleFireball=function(){return"palla di fuoco viola"},c.projectileRedFireball=function(){return"palla di fuoco rossa"},c.projectileYellowHearts=function(){return"cuori gialli"},c.projectilePurpleHearts=function(){return"cuori viola"},c.projectileRedHearts=function(){return"cuori rossi"},c.projectileRandom=function(){return"scelto a caso"},c.reinfFeedbackMsg=function(){return'Premi "Ricomincia" per ricominciare a raccontare la tua storia.'},c.repeatForever=function(){return"ripeti per sempre"},c.repeatDo=function(){return"fai"},c.repeatForeverTooltip=function(){return"Esegui ripetutamente le azioni in questo blocco mentre la storia è in esecuzione."},c.saySprite=function(){return"di'"},c.saySpriteN=function(a){return"il personaggio "+v(a,"spriteIndex")+" dice"},c.saySpriteTooltip=function(){return"Visualizza un fumetto con il testo associato del personaggio specificato."},c.scoreText=function(a){return"Punteggio: "+v(a,"playerScore")},c.setBackground=function(){return"imposta lo sfondo"},c.setBackgroundRandom=function(){return"imposta uno sfondo scelto a caso"},c.setBackgroundBlack=function(){return"imposta lo sfondo nero"},c.setBackgroundCave=function(){return"imposta lo sfondo Grotta"},c.setBackgroundCloudy=function(){return"imposta lo sfondo nuvoloso"},c.setBackgroundHardcourt=function(){return"imposta lo sfondo per polo"},c.setBackgroundNight=function(){return"imposta lo sfondo notturno"},c.setBackgroundUnderwater=function(){return"imposta lo sfondo Sottomarino"},c.setBackgroundCity=function(){return"imposta lo sfondo Città"},c.setBackgroundDesert=function(){return"imposta lo sfondo Deserto"},c.setBackgroundRainbow=function(){return"imposta lo sfondo Arcobaleno"},c.setBackgroundSoccer=function(){return"imposta lo sfondo Campo da Calcio"},c.setBackgroundSpace=function(){return"imposta lo sfondo Spaziale"},c.setBackgroundTennis=function(){return"imposta lo sfondo Campo da Tennis"},c.setBackgroundWinter=function(){return"imposta lo sfondo Inverno"},c.setBackgroundTooltip=function(){return"Imposta l'immagine di sfondo"},c.setScoreText=function(){return"imposta il punteggio"},c.setScoreTextTooltip=function(){return"Imposta il testo da visualizzare nell'area del punteggio."},c.setSpriteEmotionAngry=function(){return"ad un umore arrabbiato"},c.setSpriteEmotionHappy=function(){return"ad un umore felice"},c.setSpriteEmotionNormal=function(){return"ad un umore normale"},c.setSpriteEmotionRandom=function(){return"ad un umore scelto a caso"},c.setSpriteEmotionSad=function(){return"ad un umore triste"},c.setSpriteEmotionTooltip=function(){return"Imposta l'umore del personaggio"},c.setSpriteAlien=function(){return"all'immagine di un alieno"},c.setSpriteBat=function(){return"all'immagine di un pipistrello"},c.setSpriteBird=function(){return"all'immagine di un uccello"},c.setSpriteCat=function(){return"all'immagine di un gatto"},c.setSpriteCaveBoy=function(){return"all'immagine di un cavernicolo"},c.setSpriteCaveGirl=function(){return"all'immagine di una cavernicola"},c.setSpriteDinosaur=function(){return"all'immagine di un dinosauro"},c.setSpriteDog=function(){return"all'immagine di un gatto"},c.setSpriteDragon=function(){return"all'immagine di un drago"},c.setSpriteGhost=function(){return"all'immagine di un fantasma"},c.setSpriteHidden=function(){return"a un'immagine nascosta"},c.setSpriteHideK1=function(){return"nascondi"},c.setSpriteKnight=function(){return"all'immagine di un cavaliere"},c.setSpriteMonster=function(){return"all'immagine di un mostro"},c.setSpriteNinja=function(){return"all'immagine di un ninja mascherato"},c.setSpriteOctopus=function(){return"all'immagine di un polpo"},c.setSpritePenguin=function(){return"all'immagine di un pinguino"},c.setSpritePirate=function(){return"all'immagine di un pirata"},c.setSpritePrincess=function(){return"all'immagine di una principessa"},c.setSpriteRandom=function(){return"a un'immagine scelta a caso"},c.setSpriteRobot=function(){return"all'immagine di un robot"},c.setSpriteShowK1=function(){return"mostra"},c.setSpriteSpacebot=function(){return"all'immagine di un robot spaziale"},c.setSpriteSoccerGirl=function(){return"all'immagine di una calciatrice"},c.setSpriteSoccerBoy=function(){return"all'immagine di un calciatore"},c.setSpriteSquirrel=function(){return"all'immagine di uno scoiattolo"},c.setSpriteTennisGirl=function(){return"all'immagine di una tennista"},c.setSpriteTennisBoy=function(){return"all'immagine di un tennista"},c.setSpriteUnicorn=function(){return"all'immagine di un unicorno"},c.setSpriteWitch=function(){return"a un'immagine di strega"},c.setSpriteWizard=function(){return"all'immagine di un mago"},c.setSpritePositionTooltip=function(){return"Sposta istantaneamente un personaggio nella posizione specificata."},c.setSpriteK1Tooltip=function(){return"Mostra o nascondi il personaggio specificato."},c.setSpriteTooltip=function(){return"Imposta l'immagine del personaggio"},c.setSpriteSizeRandom=function(){return"ad un valore casuale"},c.setSpriteSizeVerySmall=function(){return"ad un valore molto piccolo"},c.setSpriteSizeSmall=function(){return"ad un valore piccolo"},c.setSpriteSizeNormal=function(){return"ad un valore normale"},c.setSpriteSizeLarge=function(){return"ad un valore grande"},c.setSpriteSizeVeryLarge=function(){return"ad un valore molto grande"},c.setSpriteSizeTooltip=function(){return"Imposta la dimensione di un personaggio"},c.setSpriteSpeedRandom=function(){return"a una velocità scelta a caso"},c.setSpriteSpeedVerySlow=function(){return"a una velocità molto lenta"},c.setSpriteSpeedSlow=function(){return"a una velocità lenta"},c.setSpriteSpeedNormal=function(){return"a una velocità normale"},c.setSpriteSpeedFast=function(){return"a una velocità veloce"},c.setSpriteSpeedVeryFast=function(){return"a una velocità molto veloce"},c.setSpriteSpeedTooltip=function(){return"Imposta la velocità di un personaggio"},c.setSpriteZombie=function(){return"all'immagine di uno zombie"},c.shareStudioTwitter=function(){return"Guarda la storia che ho creato io. L'ho fatta per conto mio @codeorg"},c.shareGame=function(){return"Condividi la tua storia:"},c.showTitleScreen=function(){return"mostra la schermata del titolo"},c.showTitleScreenTitle=function(){return"titolo"},c.showTitleScreenText=function(){return"testo"},c.showTSDefTitle=function(){return"scrivi qua il titolo"},c.showTSDefText=function(){return"scrivi qua il testo"},c.showTitleScreenTooltip=function(){return"Mostra la schermata iniziale con titolo e testo."},c.setSprite=function(){return"imposta"},c.setSpriteN=function(a){return"imposta il personaggio "+v(a,"spriteIndex")},c.soundCrunch=function(){return"sgranocchiamento"},c.soundGoal1=function(){return"obiettivo raggiunto"},c.soundGoal2=function(){return"obiettivo raggiunto (versione alternativa)"},c.soundHit=function(){return"colpo"},c.soundLosePoint=function(){return"punto perso"},c.soundLosePoint2=function(){return"punto perso (versione alternativa)"},c.soundRetro=function(){return"retrò"},c.soundRubber=function(){return"gomma"},c.soundSlap=function(){return"schiaffo"},c.soundWinPoint=function(){return"punto vinto"},c.soundWinPoint2=function(){return"punto vinto (versione alternativa)"},c.soundWood=function(){return"legno"},c.speed=function(){return"velocità"},c.stopSprite=function(){return"ferma"},c.stopSpriteN=function(a){return"ferma il personaggio "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Ferma il movimento di un personaggio."},c.throwSprite=function(){return"lancia"},c.throwSpriteN=function(a){return"il personaggio "+v(a,"spriteIndex")+" lancia"},c.throwTooltip=function(){return"Lancia un proiettile dal personaggio specificato."},c.vanish=function(){return"fai svanire"},c.vanishActorN=function(a){return"fai svanire il personaggio "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Fa svanire il personaggio."},c.waitFor=function(){return"aspetta per"},c.waitSeconds=function(){return"secondi"},c.waitForClick=function(){return"aspetta il clic"},c.waitForRandom=function(){return"aspetta a caso"},c.waitForHalfSecond=function(){return"aspetta per mezzo secondo"},c.waitFor1Second=function(){return"aspetta per 1 secondo"},c.waitFor2Seconds=function(){return"aspetta per 2 secondi"},c.waitFor5Seconds=function(){return"aspetta per 5 secondi"},c.waitFor10Seconds=function(){return"aspetta per 10 secondi"},c.waitParamsTooltip=function(){return"Aspetta per il numero di secondi specificato (se è zero aspetta fino ad un clic)."},c.waitTooltip=function(){return"Aspetta una quantità di tempo specificata oppure il verificarsi di un clic."},c.whenArrowDown=function(){return"freccia in basso"},c.whenArrowLeft=function(){return"freccia a sinistra"},c.whenArrowRight=function(){return"freccia a destra"},c.whenArrowUp=function(){return"freccia in alto"},c.whenArrowTooltip=function(){return"Esegui le azioni sotto indicate quando viene premuta la freccia specificata."},c.whenDown=function(){return"quando la freccia in basso"},c.whenDownTooltip=function(){return'Esegue le azioni qua sotto quando viene premuto il tasto "freccia in basso".'},c.whenGameStarts=function(){return"quando la storia inizia"},c.whenGameStartsTooltip=function(){return"Esegue le azioni qua sotto quando la storia inizia."},c.whenLeft=function(){return"quando la freccia a sinistra"},c.whenLeftTooltip=function(){return'Esegue le azioni qua sotto quando viene premuto il tasto "freccia a sinistra".'},c.whenRight=function(){return"quando la freccia a destra"},c.whenRightTooltip=function(){return'Esegue le azioni qua sotto quando viene premuto il tasto "freccia a destra".'},c.whenSpriteClicked=function(){return"quando si clicca sul personaggio"},c.whenSpriteClickedN=function(a){return"quando si clicca sul personaggio "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Esegui le azioni qua sotto quando si clicca su un personaggio."},c.whenSpriteCollidedN=function(a){return"quando il personaggio "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Esegui le azioni qua sotto quando un personaggio tocca un altro personaggio."},c.whenSpriteCollidedWith=function(){return"tocca"},c.whenSpriteCollidedWithN=function(a){return"tocca il personaggio "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"tocca la palla di fuoco blu"},c.whenSpriteCollidedWithPurpleFireball=function(){return"tocca la palla di fuoco viola"},c.whenSpriteCollidedWithRedFireball=function(){return"tocca la palla di fuoco rossa"},c.whenSpriteCollidedWithYellowHearts=function(){return"tocca i cuori gialli"},c.whenSpriteCollidedWithPurpleHearts=function(){return"tocca i cuori viola"},c.whenSpriteCollidedWithRedHearts=function(){return"tocca i cuori rossi"},c.whenSpriteCollidedWithBottomEdge=function(){return"tocca il bordo inferiore"},c.whenSpriteCollidedWithLeftEdge=function(){return"tocca il bordo a sinistra"},c.whenSpriteCollidedWithRightEdge=function(){return"tocca il bordo a destra"},c.whenSpriteCollidedWithTopEdge=function(){return"tocca il bordo superiore"},c.whenUp=function(){return"quando la freccia in alto"},c.whenUpTooltip=function(){return'Esegue le azioni qua sotto quando viene premuto il tasto "freccia in alto".'},c.yes=function(){return"Sì"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ja_jp/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ja_jp/common":40,"../../locale/ja_jp/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ja_jp/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ja_jp/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ja_jp/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ja_jp/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ja_jp/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ja_jp/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ja=function(){return"other"},c.and=function(){return"そして"},c.blocklyMessage=function(){return"ブロック状の"},c.catActions=function(){return"操作"},c.catColour=function(){return"色"},c.catLogic=function(){return"ロジック(論理)"},c.catLists=function(){return"リスト"},c.catLoops=function(){return"繰り返し"},c.catMath=function(){return"数値"},c.catProcedures=function(){return"関数"},c.catText=function(){return"文字列"},c.catVariables=function(){return"変数"},c.codeTooltip=function(){return"生成されたJavaScriptコードを見る。"},c.continue=function(){return"次へ"},c.dialogCancel=function(){return"キャンセル"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"北"},c.directionSouthLetter=function(){return"南"},c.directionEastLetter=function(){return"東"},c.directionWestLetter=function(){return"西"},c.end=function(){return"終了"},c.emptyBlocksErrorMsg=function(){return'”Repeat”または"If"のブロックを動作をさせるためには内側に別のブロックが必要になります。内側のブロックが構成されているブロック 内に適切にはめ込まれているか確認をしてください。\n\n\n'},c.emptyFunctionBlocksErrorMsg=function(){return"関数ブロックは、中に他のブロックがないと動きません。"},c.extraTopBlocks=function(){return"イベントブロックに付いていない余分なブロックがあります。"},c.finalStage=function(){return"おめでとうございます !最終ステージをクリアしました。"},c.finalStageTrophies=function(a){return"おめでとうございます !最終ステージをクリアしたので "+p(a,"numTrophies",0,"ja",{one:"トロフィー",other:n(a,"numTrophies")+" トロフィー"})+"を獲得しました。"},c.finish=function(){return"完了"},c.generatedCodeInfo=function(a){return"トップの大学(例えば、"+v(a,"berkeleyLink")+" "+v(a,"harvardLink")+")でもブロック ベースのプログラミングを教えています 。でも、どうなっているか確認できるように、あなたが書いたブロックを世界で最も広く使用されるプログラム言語の JavaScript で表示できます。"},c.hashError=function(){return"申し訳ありませんが、'%1'は保存されているプログラムと一致しません。"},c.help=function(){return"ヘルプ"},c.hintTitle=function(){return"ヒント:"},c.jump=function(){return"ジャンプ"},c.levelIncompleteError=function(){return"構成に必要なブロックをすべて使っていますが、使い方が適切ではありません。"},c.listVariable=function(){return"リスト"},c.makeYourOwnFlappy=function(){return"自分だけの「パタパタゲーム」を作りましょう。"},c.missingBlocksErrorMsg=function(){return"下にある一つ以上のブロックを使ってこのパズルを解いてみましょう。"},c.nextLevel=function(a){return"おめでとうございます !あなたはパズルを "+v(a,"puzzleNumber")+" 完了しました。"},c.nextLevelTrophies=function(a){return"おめでとうございます !あなたはパズル "+v(a,"puzzleNumber")+" を完了し、"+p(a,"numTrophies",0,"ja",{one:"トロフィー",other:n(a,"numTrophies")+" トロフィー"})+"を獲得しました。"},c.nextStage=function(a){return"おめでとうございます !"+v(a,"stageName")+"を コンプリートしました。"},c.nextStageTrophies=function(a){return"おめでとうございます!あなたはステージ "+v(a,"stageNumber")+" をクリアし、"+p(a,"numTrophies",0,"ja",{one:"トロフィー",other:n(a,"numTrophies")+" トロフィー"})+"を獲得しました。"},c.numBlocksNeeded=function(a){return"おめでとうございます !あなたはパズル "+v(a,"puzzleNumber")+" を完了しました。 (もしくは "+p(a,"numBlocks",0,"ja",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+" のみの使用だけでも可能でした。)"},c.numLinesOfCodeWritten=function(a){return"あなたはたった今 "+p(a,"numLines",0,"ja",{one:"1 ライン",other:n(a,"numLines")+" ライン"})+" のコードを書きました!\n"},c.play=function(){return"再生" },c.puzzleTitle=function(a){return"パズル "+v(a,"puzzle_number")+" の "+v(a,"stage_total")},c.repeat=function(){return"繰り返し"},c.resetProgram=function(){return"リセット"},c.runProgram=function(){return"実行"},c.runTooltip=function(){return"ワークスペース内のブロックによって定義されたプログラムを実行します。\n"},c.score=function(){return"スコア"},c.showCodeHeader=function(){return"コードの表示"},c.showGeneratedCode=function(){return"コードの表示"},c.subtitle=function(){return"ビジュアル・プログラミング環境"},c.textVariable=function(){return"テキスト"},c.tooFewBlocksMsg=function(){return"必要なすべての種類のブロックを使用していますが、このパズルを完成させるために、選択した種類のブロックの中から複数を選んでもう一度試してください。"},c.tooManyBlocksMsg=function(){return"このパズルは ブロックで解決する事ができます。\n"},c.tooMuchWork=function(){return"ちょっと作業が多すぎますね!もう少し繰り返し回数を少なくできませんか?"},c.toolboxHeader=function(){return"ブロック"},c.openWorkspace=function(){return"仕組み"},c.totalNumLinesOfCodeWritten=function(a){return"すべての時間の合計: コードの "+p(a,"numLines",0,"ja",{one:"1 ライン",other:n(a,"numLines")+" ライン"})+"。\n"},c.tryAgain=function(){return"やり直す"},c.hintRequest=function(){return"ヒントを見る"},c.backToPreviousLevel=function(){return"前のレベルに戻る"},c.saveToGallery=function(){return"ギャラリーに保存"},c.savedToGallery=function(){return"ギャラリーに保存しました!"},c.typeCode=function(){return"これらの指示の下、JavaScript のコードを入力してください。"},c.typeFuncs=function(){return"利用可能な機能:%1"},c.typeHint=function(){return"カッコとセミコロンが必要な事に注意してください。"},c.workspaceHeader=function(){return"ここでブロックを組み立てよう:"},c.infinity=function(){return"無限\n"},c.rotateText=function(){return"お使いのデバイスを回転させてください。"},c.orientationLock=function(){return"デバイスの設定にあるオリエンテーション(方向)ロックをオフにしてください。"},c.wantToLearn=function(){return"プログラムを習いたい?"},c.watchVideo=function(){return"ビデオを見る"},c.when=function(){return"とき"},c.whenRun=function(){return"実行時"},c.tryHOC=function(){return"1時間コース(Hour of Code)を試す"},c.signup=function(){return"イントロのコースに申し込む"},c.hintHeader=function(){return"ちょび技があるよ:"},c.genericFeedback=function(){return"どうなったかよく見て、プログラムを直してみよう。"}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ja=function(){return"other"},c.actor=function(){return"俳優"},c.catActions=function(){return"操作"},c.catControl=function(){return"繰り返し"},c.catEvents=function(){return"イベント"},c.catLogic=function(){return"ロジック(論理)"},c.catMath=function(){return"数学"},c.catProcedures=function(){return"関数"},c.catText=function(){return"テキスト"},c.catVariables=function(){return"変数"},c.changeScoreTooltip=function(){return"スコアへポイントを追加または削除します。"},c.changeScoreTooltipK1=function(){return"スコアにポイントを追加します。"},c.continue=function(){return"続行"},c.decrementPlayerScore=function(){return"ポイントを消します。"},c.defaultSayText=function(){return"ここに入力。"},c.emotion=function(){return"気分"},c.finalLevel=function(){return"おめでとうございます !最後のパズルを解決しました。"},c.hello=function(){return"こんにちは"},c.helloWorld=function(){return"世界よこんにちは!"},c.incrementPlayerScore=function(){return"ポイントを採点する。"},c.makeProjectileDisappear=function(){return"消える"},c.makeProjectileBounce=function(){return"バウンス"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"あなたのストーリーを作る"},c.moveDirectionDown=function(){return"下"},c.moveDirectionLeft=function(){return"左"},c.moveDirectionRight=function(){return"右"},c.moveDirectionUp=function(){return"上"},c.moveDirectionRandom=function(){return"ランダム"},c.moveDistance25=function(){return"25 ピクセル"},c.moveDistance50=function(){return"50 ピクセル"},c.moveDistance100=function(){return"100 ピクセル"},c.moveDistance200=function(){return"200 ピクセル"},c.moveDistance400=function(){return"400 ピクセル"},c.moveDistancePixels=function(){return"ピクセル"},c.moveDistanceRandom=function(){return"ランダムなピクセル"},c.moveDistanceTooltip=function(){return"俳優を指定方向に特定距離で移動させる。"},c.moveSprite=function(){return"移動"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"下に移動します。"},c.moveDownTooltip=function(){return"俳優を下に移動します。"},c.moveLeft=function(){return"左に移動"},c.moveLeftTooltip=function(){return"俳優を左に移動します。"},c.moveRight=function(){return"右に移動します。"},c.moveRightTooltip=function(){return"アクターを右に移動します。"},c.moveUp=function(){return"上に移動します。"},c.moveUpTooltip=function(){return"俳優を上に移動します。"},c.moveTooltip=function(){return"俳優を移動します。"},c.nextLevel=function(){return"おめでとうございます !このパズルを完了しました。"},c.no=function(){return"いいえ"},c.numBlocksNeeded=function(){return"このパズルは%1個のブロックで解けます。"},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"バリバリする音を再生しなさい。"},c.playSoundGoal1=function(){return"目標 1 のサウンドを再生します。"},c.playSoundGoal2=function(){return"目標 2 サウンドを再生します。"},c.playSoundHit=function(){return"サウンドを押して再生します。"},c.playSoundLosePoint=function(){return"失点音の再生してください。"},c.playSoundLosePoint2=function(){return"失点音2の再生をしてください。"},c.playSoundRetro=function(){return"レトロなサウンドを再生します。"},c.playSoundRubber=function(){return"ゴムの音を再生します。"},c.playSoundSlap=function(){return"平手打ちの音を再生します。"},c.playSoundTooltip=function(){return"選択音を再生"},c.playSoundWinPoint=function(){return"勝利ポイントの音を再生します。"},c.playSoundWinPoint2=function(){return"勝利ポイント2の音を再生します。"},c.playSoundWood=function(){return"木製の音を再生します。"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"ランダム"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"する"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(){return"得点:"},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"背景画像を設定"},c.setScoreText=function(){return"得点を設定"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"テキスト"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"セット"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"矢印が下のとき"},c.whenDownTooltip=function(){return"下向きの矢印キーが押されたとき次のアクションを実行します。"},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"左矢印"},c.whenLeftTooltip=function(){return"下向きの矢印キーが押されたとき以下のアクションを実行します。"},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"はい"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||""; this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ko_kr/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ko_kr/common":40,"../../locale/ko_kr/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ko_kr/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ko_kr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ko_kr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ko_kr/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ko_kr/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ko_kr/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ko=function(){return"other"},c.and=function(){return"이면서"},c.blocklyMessage=function(){return"Blockly(블러클리)"},c.catActions=function(){return"동작"},c.catColour=function(){return"색"},c.catLogic=function(){return"논리"},c.catLists=function(){return"리스트"},c.catLoops=function(){return"반복"},c.catMath=function(){return"계산"},c.catProcedures=function(){return"함수"},c.catText=function(){return"문장"},c.catVariables=function(){return"변수"},c.codeTooltip=function(){return"자바스크립트(JavaScript) 코드 보기."},c.continue=function(){return"계속하기"},c.dialogCancel=function(){return"취소"},c.dialogOK=function(){return"확인"},c.directionNorthLetter=function(){return"북"},c.directionSouthLetter=function(){return"남"},c.directionEastLetter=function(){return"동"},c.directionWestLetter=function(){return"서"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"반복" 블럭이나 "조건" 블럭이 실행되려면, 그 안에 다른 블럭들이 있어야 합니다. 블럭 안쪽에 필요한 블럭들을 끼워 맞춰 연결하세요.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"이벤트 블럭에 연결하지 않은 남는 블럭이 있습니다."},c.finalStage=function(){return"축하합니다! 마지막 단계까지 성공적으로 해결했습니다."},c.finalStageTrophies=function(a){return"축하합니다! 마지막 단계까지 성공적으로 해결했고, "+p(a,"numTrophies",0,"ko",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" 을 얻었습니다."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"프로그래밍한 블럭들은 그대로 자바스크립트(JavaScript) 언어로 변환될 수 있습니다:"},c.hashError=function(){return"죄송합니다. 저장된 '%1' 프로그램은 없습니다."},c.help=function(){return"도움말"},c.hintTitle=function(){return"힌트:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"필요한 블럭들을 모두 사용했지만, 정확한 방법은 아닙니다."},c.listVariable=function(){return"리스트"},c.makeYourOwnFlappy=function(){return"자신만의 플래피 게임을 만들어보세요."},c.missingBlocksErrorMsg=function(){return"퍼즐을 풀기 위해 아래 블럭들을 더 사용해 보세요."},c.nextLevel=function(a){return"축하합니다! "+v(a,"puzzleNumber")+" 번 퍼즐을 해결했습니다."},c.nextLevelTrophies=function(a){return"축하합니다! "+v(a,"puzzleNumber")+" 번 퍼즐을 해결하고, "+p(a,"numTrophies",0,"ko",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" 를 얻었습니다."},c.nextStage=function(a){return"축하드립니다! "+v(a,"stageName")+"을(를) 완료하셨습니다."},c.nextStageTrophies=function(a){return"축하합니다! "+v(a,"stageNumber")+" 단계를 성공적으로 해결했고, "+p(a,"numTrophies",0,"ko",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" 을 얻었습니다."},c.numBlocksNeeded=function(a){return"축하합니다! "+v(a,"puzzleNumber")+" 번 퍼즐을 해결했습니다. (하지만, "+p(a,"numBlocks",0,"ko",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+" 만 사용해야 합니다.)"},c.numLinesOfCodeWritten=function(a){return"오! 코드 "+p(a,"numLines",0,"ko",{one:"1 line",other:n(a,"numLines")+" 줄"})+"로 해결했네요!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"퍼즐 "+v(a,"puzzle_number")+"/"+v(a,"stage_total")},c.repeat=function(){return"반복" },c.resetProgram=function(){return"처음 상태로"},c.runProgram=function(){return"실행"},c.runTooltip=function(){return"블럭들로 작성되어있는 프로그램을 실행합니다."},c.score=function(){return"score"},c.showCodeHeader=function(){return"코드 보기"},c.showGeneratedCode=function(){return"코드 보기"},c.subtitle=function(){return"비주얼 프로그래밍 환경"},c.textVariable=function(){return"문장"},c.tooFewBlocksMsg=function(){return"퍼즐을 해결하기 위해 필요한 블럭 종류는 모두 사용했지만, 이런 종류의 블럭들을 더 사용해 보세요."},c.tooManyBlocksMsg=function(){return"이 퍼즐은 블럭들을 사용해 해결할 수 있습니다."},c.tooMuchWork=function(){return"작업을 너무 많이 해야 되요! 더 적게 반복하는 방법은 없을까요?"},c.toolboxHeader=function(){return"블럭"},c.openWorkspace=function(){return"실행 설명"},c.totalNumLinesOfCodeWritten=function(a){return"지금까지: 코드 "+p(a,"numLines",0,"ko",{one:"1 line",other:n(a,"numLines")+" 줄"})+" 사용."},c.tryAgain=function(){return"다시 시도"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"이전 퍼즐"},c.saveToGallery=function(){return"갤러리에 저장"},c.savedToGallery=function(){return"갤러리에 저장되었습니다!"},c.typeCode=function(){return"자바스크립트(JavaScript) 코드를 직접 작성하세요."},c.typeFuncs=function(){return"사용 가능 함수:%1"},c.typeHint=function(){return'괄호 "( )" 와 세미콜론 ";" 이 필요합니다.'},c.workspaceHeader=function(){return"블럭들을 이곳에서 조립하세요:"},c.infinity=function(){return"무한"},c.rotateText=function(){return"돌리세요."},c.orientationLock=function(){return"회전 잠금을 해제하세요."},c.wantToLearn=function(){return"코드(code)를 배워볼까요?"},c.watchVideo=function(){return"비디오 보기"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Hour of Code 해보기"},c.signup=function(){return"샘플 코스를 위해 가입하기"},c.hintHeader=function(){return"팁:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ko=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"동작"},c.catControl=function(){return"반복"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"논리"},c.catMath=function(){return"계산"},c.catProcedures=function(){return"함수"},c.catText=function(){return"문장"},c.catVariables=function(){return"변수"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"계속하기"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"축하합니다! 마지막 퍼즐을 해결했습니다."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"랜덤 번째 위치"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"픽셀"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"축하합니다! 퍼즐을 해결했습니다."},c.no=function(){return"아니요"},c.numBlocksNeeded=function(){return"%1 개의 블럭으로 퍼즐을 해결할 수 있습니다."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"랜덤 번째 위치"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"실행"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"문장"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"에서 설정"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"예"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?"); if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/lt_lt/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/lt_lt/common":40,"../../locale/lt_lt/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/lt_lt/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/lt_lt/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/lt_lt/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/lt_lt/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/lt_lt/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/lt_lt/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.lt=function(a){return a%10==1&&(11>a%100||a%100>19)?"one":a%10>=2&&9>=a%10&&(11>a%100||a%100>19)&&a==Math.floor(a)?"few":"other"},c.and=function(){return"ir"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Komandos"},c.catColour=function(){return"Spalva"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Sąrašai"},c.catLoops=function(){return"Kartojimas"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Sudėtinės komandos"},c.catText=function(){return"Tekstas"},c.catVariables=function(){return"Kintamieji"},c.codeTooltip=function(){return"Žiūrėti sukurtą JavaScript kodą."},c.continue=function(){return"Tęsti"},c.dialogCancel=function(){return"Atšaukti"},c.dialogOK=function(){return"gerai"},c.directionNorthLetter=function(){return"Š"},c.directionSouthLetter=function(){return"P"},c.directionEastLetter=function(){return"R"},c.directionWestLetter=function(){return"V"},c.end=function(){return"pabaiga"},c.emptyBlocksErrorMsg=function(){return"„Kartojimo“ arba „Jei“ blokelių viduje reikia įdėti kitus blokelius, kad jie veiktų. Įsitikink, kad jie yra gerai sukibę vienas su kitu."},c.emptyFunctionBlocksErrorMsg=function(){return"Komandos apraše turi būti išvardintos komandos (įdėtas bent vienas blokas)."},c.extraTopBlocks=function(){return"Tu panaudojai keletą blokų, kurie nėra sujungti su būtinuoju blokeliu."},c.finalStage=function(){return"Sveikinu! Tu baigei paskutinį etapą."},c.finalStageTrophies=function(a){return"Sveikinu! Tu užbaigei paskutinį lygį ir laimėjai "+p(a,"numTrophies",0,"lt",{one:"a trofėjų",other:n(a,"numTrophies")+" trofėjus"})+"."},c.finish=function(){return"Finišas"},c.generatedCodeInfo=function(a){return"Net ir aukščiausiai įvertinti universitetai Pasaulyje moko programavimo naudojant blokelius (pvz., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Tačiau tavo sudėlioti blokeliai gali būti atvaizduojami ir JavaScript - populiariausia programavimo kalba Pasaulyje:"},c.hashError=function(){return"Atsiprašome, '%1' nesutampa su jokia įrašyta programa."},c.help=function(){return"pagalba"},c.hintTitle=function(){return"Patarimas:"},c.jump=function(){return"šok"},c.levelIncompleteError=function(){return"Tu naudoji visus būtinus blokelius, tačiau netinkamai."},c.listVariable=function(){return"sąrašas"},c.makeYourOwnFlappy=function(){return"Sukurk savo Flappy žaidimą"},c.missingBlocksErrorMsg=function(){return"Išmėgink vieną ar daugiau blokelių, esančių žemiau, kad išspręstum šią užduotį."},c.nextLevel=function(a){return"Sveikinu! Tu išsprendei galvosūkį "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Sveikinu! Užbaigėte galvosūkį "+v(a,"puzzleNumber")+" ir laimėjote "+p(a,"numTrophies",0,"lt",{one:"trofėju",other:n(a,"numTrophies")+" trofėjų"})+"."},c.nextStage=function(a){return"Sveikinu! Tu užbaigei "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Sveikinu! Tu užbaigei lygį "+v(a,"stageName")+" ir laimėjai "+p(a,"numTrophies",0,"lt",{one:"trofėjų",other:n(a,"numTrophies")+" trofėjus"})+"."},c.numBlocksNeeded=function(a){return"Sveikinu! Tu išsprendei "+v(a,"puzzleNumber")+" užduotį. (Beje, galėjai panaudoti tik "+p(a,"numBlocks",0,"lt",{"vieną":"1 blokelį",other:n(a,"numBlocks")+" blokelių"})+".)"},c.numLinesOfCodeWritten=function(a){return"Tu parašei "+p(a,"numLines",0,"lt",{one:"1 eilutę",other:n(a,"numLines")+" eilučių"})+" kodo!"},c.play=function(){return"žaisti"},c.puzzleTitle=function(a){return"Užduotis "+v(a,"puzzle_number")+" iš "+v(a,"stage_total")},c.repeat=function(){return"kartok"},c.resetProgram=function(){return"Iš naujo"},c.runProgram=function(){return"Paleisti"},c.runTooltip=function(){return"Paleisk programą, naudodamasis blokeliais."},c.score=function(){return"rezultatas"},c.showCodeHeader=function(){return"Rodyti kodą"},c.showGeneratedCode=function(){return"Rodyti kodą"},c.subtitle=function(){return"Vizuali programavimo aplinka"},c.textVariable=function(){return"tekstas"},c.tooFewBlocksMsg=function(){return"Tu naudoji visas reikiamas blokų rūšis, tačiau reikia panaudoti po daugiau kažkurių blokų."},c.tooManyBlocksMsg=function(){return"Ši užduotis gali būti išspręsta su blokais."},c.tooMuchWork=function(){return"Tu privertei mane tiek daug dirbti! Ar galėtum atlikti užduotį su mažiau kartojimų?"},c.toolboxHeader=function(){return"Blokeliai"},c.openWorkspace=function(){return"Kaip tai veikia"},c.totalNumLinesOfCodeWritten=function(a){return"Iš viso: "+p(a,"numLines",0,"lt",{one:"1 eilutė",other:n(a,"numLines")+" eilučių"})+" kodo."},c.tryAgain=function(){return"Pabandyk dar kartą"},c.hintRequest=function(){return"Užuomina"},c.backToPreviousLevel=function(){return"Grįžti į ankstesnį lygį"},c.saveToGallery=function(){return"Įrašyti į savo galeriją"},c.savedToGallery=function(){return"Įrašyti į savo galeriją!"},c.typeCode=function(){return"Įvesk savo JavaScript kodą žemiau šių instrukcijų."},c.typeFuncs=function(){return"Galimos komandos:%1"},c.typeHint=function(){return"Įsidėmėk, kad skliausteliai ir kabliataškiai yra būtini."},c.workspaceHeader=function(){return"Iš viso panaudojai blokelių: "},c.infinity=function(){return"Begalybė"},c.rotateText=function(){return"Pasuk savo įrenginį."},c.orientationLock=function(){return"Išjunk savo įrenginio ekrano pasukimą."},c.wantToLearn=function(){return"Nori išmokti programuoti?"},c.watchVideo=function(){return"Peržiūrėk šį vaizdo įrašą"},c.when=function(){return"kada"},c.whenRun=function(){return"paleidus"},c.tryHOC=function(){return"Išmėgink Vienos Valandos Kodą"},c.signup=function(){return"Užsiregistruok į kursą pradedantiesiems"},c.hintHeader=function(){return"Štai patarimas:"},c.genericFeedback=function(){return"Pažiūrėk, kaip pavyko ir pabandyk patobulinti programą."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.lt=function(a){return a%10==1&&(11>a%100||a%100>19)?"one":a%10>=2&&9>=a%10&&(11>a%100||a%100>19)&&a==Math.floor(a)?"few":"other"},c.actor=function(){return"veikėjas"},c.catActions=function(){return"Komandos"},c.catControl=function(){return"Kartojimas"},c.catEvents=function(){return"Įvykiai"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Sudėtinės komandos"},c.catText=function(){return"Tekstas"},c.catVariables=function(){return"Kintamieji"},c.changeScoreTooltip=function(){return"Pakeist rezultato reikšmę."},c.changeScoreTooltipK1=function(){return"Padidint rezultatą vienu tašku."},c.continue=function(){return"Tęsti"},c.decrementPlayerScore=function(){return"atimk tašką"},c.defaultSayText=function(){return"rašyk čia"},c.emotion=function(){return"nuotaika"},c.finalLevel=function(){return"Sveikinu! Tu išsprendei paskutinį galvosūkį."},c.hello=function(){return"labas"},c.helloWorld=function(){return"Labas, Pasauli!"},c.incrementPlayerScore=function(){return"pridėk tašką"},c.makeProjectileDisappear=function(){return"pradink"},c.makeProjectileBounce=function(){return"atsimušk"},c.makeProjectileBlueFireball=function(){return"mėlynas ugnies kamuolys"},c.makeProjectilePurpleFireball=function(){return"violetinis ugnies kamuolys"},c.makeProjectileRedFireball=function(){return"raudonas ugnies kamuolys"},c.makeProjectileYellowHearts=function(){return"geltonos širdutės"},c.makeProjectilePurpleHearts=function(){return"violetinės širdutės"},c.makeProjectileRedHearts=function(){return"raudonos širdutės"},c.makeProjectileTooltip=function(){return"Susidūręs sviedinys/objektas turi pradingti arba atšokti."},c.makeYourOwn=function(){return"Sukurkite savo istoriją"},c.moveDirectionDown=function(){return"žemyn"},c.moveDirectionLeft=function(){return"kairėn"},c.moveDirectionRight=function(){return"dešinėn"},c.moveDirectionUp=function(){return"aukštyn"},c.moveDirectionRandom=function(){return"atsitiktinis"},c.moveDistance25=function(){return"25 pikseliai"},c.moveDistance50=function(){return"50 pikselių"},c.moveDistance100=function(){return"100 pikselių"},c.moveDistance200=function(){return"200 pikselių"},c.moveDistance400=function(){return"400 pikselių"},c.moveDistancePixels=function(){return"pikseliai"},c.moveDistanceRandom=function(){return"atsitiktinis pikselių skaičius"},c.moveDistanceTooltip=function(){return"Pajudink veikėją tam tikru atstumu nurodyta kryptimi."},c.moveSprite=function(){return"judėk"},c.moveSpriteN=function(a){return"pajudink veikėją "+v(a,"spriteIndex")},c.moveDown=function(){return"judėk žemyn"},c.moveDownTooltip=function(){return"Perkelti aktorių žemyn."},c.moveLeft=function(){return"judėk kairėn"},c.moveLeftTooltip=function(){return"Perkelti aktorių kairėn."},c.moveRight=function(){return"judėk dešinėn"},c.moveRightTooltip=function(){return"Perkelti aktorių dešinėn."},c.moveUp=function(){return"judėk aukštyn"},c.moveUpTooltip=function(){return"Perkelti aktorių aukštyn."},c.moveTooltip=function(){return"Perkelti aktorių."},c.nextLevel=function(){return"Sveikinu! Išsprendei šią užduotį."},c.no=function(){return"Ne"},c.numBlocksNeeded=function(){return"Ši užduotis gali būti išspręsta su %1 blokų(-ais)."},c.ouchExclamation=function(){return"Ojoj!"},c.playSoundCrunch=function(){return"garsas = trakšt"},c.playSoundGoal1=function(){return"garsas = įvartis 1"},c.playSoundGoal2=function(){return"garsas = įvartis 2"},c.playSoundHit=function(){return"garsas = atsimušimas"},c.playSoundLosePoint=function(){return"garsas = taško praradimas"},c.playSoundLosePoint2=function(){return"garsas = taško praradimas 2"},c.playSoundRetro=function(){return"garsas = retro"},c.playSoundRubber=function(){return"garsas = guma"},c.playSoundSlap=function(){return"garsas = pliaukšt"},c.playSoundTooltip=function(){return"Grok pasirinktą garsą."},c.playSoundWinPoint=function(){return"garsas = pelnyti taškai 1"},c.playSoundWinPoint2=function(){return"garsas = pelnyti taškai 2"},c.playSoundWood=function(){return"garsas = mediena"},c.positionOutTopLeft=function(){return"į viršutinę kairiąją poziciją"},c.positionOutTopRight=function(){return"į viršutinę dešiniąją poziciją"},c.positionTopOutLeft=function(){return"į viršutinę išorinę kairiąją poziciją"},c.positionTopLeft=function(){return"pozicija = viršuje kairėje"},c.positionTopCenter=function(){return"pozicija = viršuje centre"},c.positionTopRight=function(){return"pozicija = viršuje dešinėn"},c.positionTopOutRight=function(){return"į viršutinę išorinę dešiniąją poziciją"},c.positionMiddleLeft=function(){return"pozicija = viduryje kairėje"},c.positionMiddleCenter=function(){return"pozicija = viduryje"},c.positionMiddleRight=function(){return"pozicija = viduryje dešinėje"},c.positionBottomOutLeft=function(){return"į apatinę išorinę kairiąją poziciją"},c.positionBottomLeft=function(){return"pozicija = apačioje kairėje"},c.positionBottomCenter=function(){return"pozicija = apačioje centre"},c.positionBottomRight=function(){return"pozicija = apačioje dešinėje"},c.positionBottomOutRight=function(){return"į apatinę išorinę dešiniąją poziciją"},c.positionOutBottomLeft=function(){return"į apatinę kairiąją poziciją"},c.positionOutBottomRight=function(){return"į apatinę dešiniąją poziciją"},c.positionRandom=function(){return"pozicija = atsitiktinė"},c.projectileBlueFireball=function(){return"mėlynas ugnies kamuolys"},c.projectilePurpleFireball=function(){return"violetinis ugnies kamuolys"},c.projectileRedFireball=function(){return"raudonas ugnies kamuolys"},c.projectileYellowHearts=function(){return"geltonos širdutės"},c.projectilePurpleHearts=function(){return"violetinės širdutės"},c.projectileRedHearts=function(){return"raudonos širdutės"},c.projectileRandom=function(){return"atsitiktinis"},c.reinfFeedbackMsg=function(){return"Gali nuspausti mygtuką „Mėginti dar kartą“, kad grįžtum prie savo istorijos."},c.repeatForever=function(){return"kartok amžinai"},c.repeatDo=function(){return"daryk"},c.repeatForeverTooltip=function(){return"Vykdyk veiksmus, esančius šiame bloke, pakartotinai, kol istorija yra rodoma."},c.saySprite=function(){return"sakyk"},c.saySpriteN=function(a){return"veikėjas "+v(a,"spriteIndex")+" sakys"},c.saySpriteTooltip=function(){return"Virš veikėjo galvos atsiras burbulas su nurodytu tekstu."},c.scoreText=function(a){return"Taškai: "+v(a,"playerScore")},c.setBackground=function(){return"fonas = "},c.setBackgroundRandom=function(){return"fonas = atsitiktinis"},c.setBackgroundBlack=function(){return"fonas = juodas"},c.setBackgroundCave=function(){return"fonas = urvas"},c.setBackgroundCloudy=function(){return"fonas = debesys"},c.setBackgroundHardcourt=function(){return"fonas = aikštė"},c.setBackgroundNight=function(){return"fonas = naktis"},c.setBackgroundUnderwater=function(){return"fonas = po vandeniu"},c.setBackgroundCity=function(){return"fonas = miestas"},c.setBackgroundDesert=function(){return"fonas = dykuma"},c.setBackgroundRainbow=function(){return"fonas = vaivorykštė"},c.setBackgroundSoccer=function(){return"fonas = futbolas"},c.setBackgroundSpace=function(){return"fonas = kosmosas"},c.setBackgroundTennis=function(){return"fonas = tenisas"},c.setBackgroundWinter=function(){return"fonas = žiema"},c.setBackgroundTooltip=function(){return"Nustato fono paveikslėlį"},c.setScoreText=function(){return"taškai = "},c.setScoreTextTooltip=function(){return"Kokį tekstą rodyti šalia taškų."},c.setSpriteEmotionAngry=function(){return"nuotaika = pikta"},c.setSpriteEmotionHappy=function(){return"nuotaika = laiminga"},c.setSpriteEmotionNormal=function(){return"nuotaika = normali"},c.setSpriteEmotionRandom=function(){return"nuotaika = atsitiktinė"},c.setSpriteEmotionSad=function(){return"nuotaika = liūdna"},c.setSpriteEmotionTooltip=function(){return"Nustato veikėjo nuotaiką"},c.setSpriteAlien=function(){return"išvaizda = ufonautas"},c.setSpriteBat=function(){return"išvaizda = šikšnosparnis"},c.setSpriteBird=function(){return"išvaizda = paukštis"},c.setSpriteCat=function(){return"išvaizda = katė"},c.setSpriteCaveBoy=function(){return"išvaizda = urvinis jaunuolis"},c.setSpriteCaveGirl=function(){return"išvaizda = urvinė mergina"},c.setSpriteDinosaur=function(){return"išvaizda = dinozauras"},c.setSpriteDog=function(){return"išvaizda = šuo"},c.setSpriteDragon=function(){return"išvaizda = drakonas"},c.setSpriteGhost=function(){return"išvaizda = vaiduoklis"},c.setSpriteHidden=function(){return"išvaizda = nematomas"},c.setSpriteHideK1=function(){return"pa(si)slėpk"},c.setSpriteKnight=function(){return"išvaizda = riteris"},c.setSpriteMonster=function(){return"išvaizda = pabaisa"},c.setSpriteNinja=function(){return"išvaizda = ninzė"},c.setSpriteOctopus=function(){return"išvaizda = aštunkojis"},c.setSpritePenguin=function(){return"išvaizda = pingvinas"},c.setSpritePirate=function(){return"išvaizda = piratas"},c.setSpritePrincess=function(){return"išvaizda = princesė"},c.setSpriteRandom=function(){return"išvaizda = atsitiktinė"},c.setSpriteRobot=function(){return"išvaizda = robotas"},c.setSpriteShowK1=function(){return"parodyk"},c.setSpriteSpacebot=function(){return"išvaizda = kosminis laivas"},c.setSpriteSoccerGirl=function(){return"išvaizda = futbolininkė"},c.setSpriteSoccerBoy=function(){return"išvaizda = futbolininkas"},c.setSpriteSquirrel=function(){return"išvaizda = voverė"},c.setSpriteTennisGirl=function(){return"išvaizda = tenisininkė"},c.setSpriteTennisBoy=function(){return"išvaizda = tenisininkas"},c.setSpriteUnicorn=function(){return"išvaizda = vienaragis"},c.setSpriteWitch=function(){return"išvaizda = ragana"},c.setSpriteWizard=function(){return"išvaizda = žynys"},c.setSpritePositionTooltip=function(){return"Iškart perkelia aktorių į nurodytą vietą."},c.setSpriteK1Tooltip=function(){return"Paslėpia/parodo veikėją."},c.setSpriteTooltip=function(){return"Nustato aktoriaus išvaizdą"},c.setSpriteSizeRandom=function(){return"dydis = atsitiktinis"},c.setSpriteSizeVerySmall=function(){return"dydis = labai mažas"},c.setSpriteSizeSmall=function(){return"dydis = mažas"},c.setSpriteSizeNormal=function(){return"dydis = normalus"},c.setSpriteSizeLarge=function(){return"dydis = didelis"},c.setSpriteSizeVeryLarge=function(){return"dydis = labai didelis"},c.setSpriteSizeTooltip=function(){return"Nustato veikėjo dydį."},c.setSpriteSpeedRandom=function(){return"greitis = atsitiktinis"},c.setSpriteSpeedVerySlow=function(){return"greitis = labai lėtas"},c.setSpriteSpeedSlow=function(){return"greitis = lėtas"},c.setSpriteSpeedNormal=function(){return"greitis = normalus"},c.setSpriteSpeedFast=function(){return"greitis = didelis"},c.setSpriteSpeedVeryFast=function(){return"greitis = labai didelis"},c.setSpriteSpeedTooltip=function(){return"Nustato veikėjo greitį"},c.setSpriteZombie=function(){return"išvaizda = zombis"},c.shareStudioTwitter=function(){return"Pažiūrėk, kokią istoriją sukūriau. Ją parašiau pats su @codeorg"},c.shareGame=function(){return"Pasidalink savo istorija:"},c.showTitleScreen=function(){return"parodyk ekrano pavadinimą"},c.showTitleScreenTitle=function(){return"pavadinimas"},c.showTitleScreenText=function(){return"tekstas"},c.showTSDefTitle=function(){return"įrašykite pavadinimą"},c.showTSDefText=function(){return"įrašykite tekstą"},c.showTitleScreenTooltip=function(){return"Parodyti pradinį ekraną su pavadinimu ir tekstu."},c.setSprite=function(){return"nustatyk"},c.setSpriteN=function(a){return"nustatyk aktoriui "+v(a,"spriteIndex")+":"},c.soundCrunch=function(){return"trakšt"},c.soundGoal1=function(){return"įvartis 1"},c.soundGoal2=function(){return"įvartis 2"},c.soundHit=function(){return"atsimušimas"},c.soundLosePoint=function(){return"taško praradimas 1"},c.soundLosePoint2=function(){return"taško praradimas 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"guma"},c.soundSlap=function(){return"pliaukšt"},c.soundWinPoint=function(){return"taško laimėjimas 1"},c.soundWinPoint2=function(){return"taško laimėjimas 2"},c.soundWood=function(){return"mediena"},c.speed=function(){return"greitis"},c.stopSprite=function(){return"sustok"},c.stopSpriteN=function(a){return"sustabdyk veikėją "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Sustabdo aktoriaus veiksmus."},c.throwSprite=function(){return"mesk"},c.throwSpriteN=function(a){return"veikėjau "+v(a,"spriteIndex")+" mesk"},c.throwTooltip=function(){return"Nurodytas veikėjas išmeta objektą (pvz, ugnies kamuolį)."},c.vanish=function(){return"išnyk"},c.vanishActorN=function(a){return"panaikink aktorių "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Pašalina aktorių"},c.waitFor=function(){return"palauk "},c.waitSeconds=function(){return"sekundes"},c.waitForClick=function(){return"lauk paspaudimo"},c.waitForRandom=function(){return"lauk atsitiktinį laiką"},c.waitForHalfSecond=function(){return"lauk pusę sekundės"},c.waitFor1Second=function(){return"lauk 1 sekundę"},c.waitFor2Seconds=function(){return"lauk 2 sekundes"},c.waitFor5Seconds=function(){return"lauk 5 sekundes"},c.waitFor10Seconds=function(){return"lauk 10 sekundžių"},c.waitParamsTooltip=function(){return"Palaukia nurodytą kiekį sekundžių. O jei nurodyta 0 - kol bus spustelta pele."},c.waitTooltip=function(){return"Palaukia, kol praeis nurodytas laikas arba kai įvyks mygtuko paspaudimas."},c.whenArrowDown=function(){return"rodyklė į apačią"},c.whenArrowLeft=function(){return"rodyklė į kairę"},c.whenArrowRight=function(){return"rodyklė į dešinę"},c.whenArrowUp=function(){return"rodyklė į viršų"},c.whenArrowTooltip=function(){return"Įvykdys nurodytus veiksmus, kai atitinkama rodyklė bus paspausta."},c.whenDown=function(){return"kai rodyklė žemyn"},c.whenDownTooltip=function(){return"Įvykdyk žemiau nurodytus veiksmus, kai bus nuspaustas klaviatūros klavišas rodyklė žemyn."},c.whenGameStarts=function(){return"kai istorija prasideda"},c.whenGameStartsTooltip=function(){return"Įvykdyk žemiau nurodytus veiksmus, kai istorija prasidės."},c.whenLeft=function(){return"kai rodyklė į kairę"},c.whenLeftTooltip=function(){return"Įvykdyk žemiau nurodytus veiksmus, kai bus nuspaustas klaviatūros klavišas rodyklė į kairę."},c.whenRight=function(){return"kai rodyklė į dešinę"},c.whenRightTooltip=function(){return"Įvykdyk žemiau nurodytus veiksmus, kai bus nuspaustas klaviatūros klavišas rodyklė dešinėn."},c.whenSpriteClicked=function(){return"kai veikėjas spustelimas"},c.whenSpriteClickedN=function(a){return"kai veikėjas "+v(a,"spriteIndex")+" spustelimas"},c.whenSpriteClickedTooltip=function(){return"Vykdyti veiksmus, nurodytus žemiau, kai bus nuspausta ant aktoriaus."},c.whenSpriteCollidedN=function(a){return"kai veikėjas "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Vykdyti veiksmus, nurodytus žemiau, kai aktorius paliečia kitą aktorių."},c.whenSpriteCollidedWith=function(){return"paliečia"},c.whenSpriteCollidedWithN=function(a){return"paliečia veikėją "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"paliečia mėlyną ugnies kamuolį"},c.whenSpriteCollidedWithPurpleFireball=function(){return"paliečia violetinį ugnies kamuolį"},c.whenSpriteCollidedWithRedFireball=function(){return"paliečia raudoną ugnies kamuolį"},c.whenSpriteCollidedWithYellowHearts=function(){return"paliečia geltonas širdutes"},c.whenSpriteCollidedWithPurpleHearts=function(){return"paliečia violetines širdutes"},c.whenSpriteCollidedWithRedHearts=function(){return"paliečia raudonas širdutes"},c.whenSpriteCollidedWithBottomEdge=function(){return"paliečia scenos apačią"},c.whenSpriteCollidedWithLeftEdge=function(){return"paliečia scenos kairį šoną"},c.whenSpriteCollidedWithRightEdge=function(){return"paliečia scenos dešinį šoną"},c.whenSpriteCollidedWithTopEdge=function(){return"paliečia scenos viršų"},c.whenUp=function(){return"kai rodyklė aukštyn"},c.whenUpTooltip=function(){return"Įvykdyk žemiau nurodytus veiksmus, kai bus nuspaustas klaviatūros klavišas rodyklė aukštyn."},c.yes=function(){return"Taip"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ms_my/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ms_my/common":40,"../../locale/ms_my/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ms_my/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ms_my/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ms_my/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ms_my/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ms_my/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ms_my/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ms=function(){return"other"},c.and=function(){return"dan"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Tindakan"},c.catColour=function(){return"Warna"},c.catLogic=function(){return"Logik"},c.catLists=function(){return"Senarai"},c.catLoops=function(){return"Pusingan"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Fungsi"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Pembolehubah"},c.codeTooltip=function(){return"Lihat kod JavaScript yang dijana."},c.continue=function(){return"Teruskan"},c.dialogCancel=function(){return"Batal"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"U"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"T"},c.directionWestLetter=function(){return"B"},c.end=function(){return"tamat"},c.emptyBlocksErrorMsg=function(){return'"Ulangan" atau "Jika" blok perlu mempunyai blok lain di dalamnya untuk berfungsi. Pastikan blok dalaman sesuai di dalam kandungan blok.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Tahniah! Anda telah melengkapkan peringkat akhir."},c.finalStageTrophies=function(a){return"Tahniah! Anda telah selesai peringkat akhir dan memenangi "+p(a,"numTrophies",0,"ms",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Universiti terkemuka juga mengajarkan blok-asas koding (cth., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Tetapi, blok yang telah disusun juga boleh ditunjukkan dalam JavaScript, bahasa koding yang paling meluas digunakan:"},c.hashError=function(){return"Maaf, '%1' tidak sepadan dengan sebarang atur cara yang disimpan."},c.help=function(){return"Bantu"},c.hintTitle=function(){return"Petunjuk:"},c.jump=function(){return"lompat"},c.levelIncompleteError=function(){return"Anda menggunakan kesemua jenis blok yang diperlukan tetapi dengan cara yang tidak betul."},c.listVariable=function(){return"senarai"},c.makeYourOwnFlappy=function(){return"Buat permainan Flappy anda sendiri"},c.missingBlocksErrorMsg=function(){return"Cuba satu atau lebih blok di bawah untuk menyelesaikan puzzle ini."},c.nextLevel=function(a){return"Tahniah! Anda telah melengkapkan puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Tahniah! Anda telah menyelesaikan Puzzle "+v(a,"puzzleNumber")+" dan memenangi "+p(a,"numTrophies",0,"ms",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Tahniah! Anda tamatkan "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Tahniah! Anda telah menyelesaikan "+v(a,"stageName")+" dan memenangi "+p(a,"numTrophies",0,"ms",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"ms",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"Anda baru sahaja menulis "+p(a,"numLines",0,"ms",{one:"1 line",other:n(a,"numLines")+" lines"})+" kod!"},c.play=function(){return"Main"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" dari "+v(a,"stage_total")},c.repeat=function(){return"ulang"},c.resetProgram=function(){return"Tetapkan semula"},c.runProgram=function(){return"Mainkan program"},c.runTooltip=function(){return"Jalankan program yang ditetapkan dengan blok dalam ruang kerja."},c.score=function(){return"skor"},c.showCodeHeader=function(){return"Tunjuk Kod"},c.showGeneratedCode=function(){return"Tunjukkan Kod"},c.subtitle=function(){return"persekitaran pengaturcaraan visual"},c.textVariable=function(){return"teks"},c.tooFewBlocksMsg=function(){return"Anda menggunakan semua jenis blok yang diperlukan, cuba gunakan lebih banyak jenis blok untuk menyelesaikan puzzle ini."},c.tooManyBlocksMsg=function(){return"Puzzle ini dapat diselesaikan dengan blok."},c.tooMuchWork=function(){return"Anda membuatkan saya melakukan banyak kerja! Bolehkah anda cuba ulang beberapa kali sahaja?"},c.toolboxHeader=function(){return"blok"},c.openWorkspace=function(){return"Bagaimana ia berfungsi"},c.totalNumLinesOfCodeWritten=function(a){return"Total masa keseluruhan: "+p(a,"numLines",0,"ms",{one:"1 line",other:n(a,"numLines")+" lines"})+" kod."},c.tryAgain=function(){return"Cuba lagi"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Kembali ke tahap yang sebelumnya"},c.saveToGallery=function(){return"Simpan ke galeri anda"},c.savedToGallery=function(){return"Disimpan ke galeri anda!"},c.typeCode=function(){return"Taip kod JavaScript anda di bawah arahan ini."},c.typeFuncs=function(){return"fungsi sedia ada:%1"},c.typeHint=function(){return"Ambil perhatian bahawa kurungan dan koma bertindih adalah perlu."},c.workspaceHeader=function(){return"Pasang blok anda di sini: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Pusingkan peranti anda."},c.orientationLock=function(){return"Matikan kunci orientasi dalam tetapan peranti."},c.wantToLearn=function(){return"Ingin belajar untuk mengekod?"},c.watchVideo=function(){return"Tonton Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Daftar untuk kursus pengenalan"},c.hintHeader=function(){return"Sedikit Tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ms=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Tindakan"},c.catControl=function(){return"Pusingan"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logik"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Fungsi-fungsi"},c.catText=function(){return"Teks"},c.catVariables=function(){return"Pembolehubah"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Teruskan"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Tahniah! Anda berjaya menyelesaikan puzzle terakhir."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"rawak"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"piksel"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Tahniah! Anda telah melengkapkan puzzle ini."},c.no=function(){return"Tidak"},c.numBlocksNeeded=function(){return"Puzzle ini boleh diselesaikan dengan %1 blok."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"rawak"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"Hasilkan"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"teks"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Ya"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/nl_nl/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/nl_nl/common":40,"../../locale/nl_nl/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/nl_nl/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/nl_nl/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/nl_nl/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/nl_nl/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/nl_nl/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/nl_nl/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.nl=function(a){return 1===a?"one":"other"},c.and=function(){return"en"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Acties"},c.catColour=function(){return"Kleur"},c.catLogic=function(){return"Logica"},c.catLists=function(){return"Lijsten"},c.catLoops=function(){return"Lussen"},c.catMath=function(){return"wiskundige"},c.catProcedures=function(){return"Functies"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabelen"},c.codeTooltip=function(){return"Zie gegenereerde JavaScript-code."},c.continue=function(){return"Doorgaan"},c.dialogCancel=function(){return"Annuleren"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"Z"},c.directionEastLetter=function(){return"O"},c.directionWestLetter=function(){return"W"},c.end=function(){return"einde"},c.emptyBlocksErrorMsg=function(){return'De "herhaal" of "als" blokken hebben andere blokken in hun nodig om te werken. Zorg ervoor dat de binnenste blok correct past in de bevattende blok.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Je hebt blokken over die niet aan een gebeurtenisblok geplakt zijn."},c.finalStage=function(){return"Gefeliciteerd! U hebt de laatste fase voltooid."},c.finalStageTrophies=function(a){return"Gefeliciteerd! U hebt de laatste fase voltooid en won "+p(a,"numTrophies",0,"nl",{one:"een trofee",other:n(a,"numTrophies")+" trofeeën"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Zelf op topuniversiteiten wordt les gegevens met programmeertalen die op blokken zijn gebaseerd (bijv. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Maar onder de motorkop kunnen de blokken waarmee je een programma hebt gemaakt ook getoond worden in JavaScript, de programmeertaal die wereldwijd het meest wordt gebruikt:"},c.hashError=function(){return"Sorry, '%1' komt niet overeen met een opgeslagen programma."},c.help=function(){return"Help"},c.hintTitle=function(){return"Tip:"},c.jump=function(){return"spring"},c.levelIncompleteError=function(){return"U gebruikt al de nodige typen van blokken, maar niet op de juiste manier."},c.listVariable=function(){return"lijst"},c.makeYourOwnFlappy=function(){return"Maak je eigen 'Flappy'-spel"},c.missingBlocksErrorMsg=function(){return"Probeer een of meer van de blokken onderaan om deze puzzel op te lossen."},c.nextLevel=function(a){return"Gefeliciteerd! U voltooide puzzel "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Gefeliciteerd! U loste puzzel "+v(a,"puzzleNumber")+" op en won "+p(a,"numTrophies",0,"nl",{one:"een trofee",other:n(a,"numTrophies")+" trofeeën"})+"."},c.nextStage=function(a){return"Gefeliciteerd! Je hebt "+v(a,"stageName")+" af." },c.nextStageTrophies=function(a){return"Gefeliciteerd! Je hebt "+v(a,"stageName")+" af en je hebt "+p(a,"numTrophies",0,"nl",{one:"een medaille",other:n(a,"numTrophies")+" medailles"})+" gewonnen."},c.numBlocksNeeded=function(a){return"Gefeliciteerd! U voltooide puzzel "+v(a,"puzzleNumber")+". (Nochtans, u kon alleen "+p(a,"numBlocks",0,"nl",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".) gebruiken"},c.numLinesOfCodeWritten=function(a){return"Je schreef zojuist "+p(a,"numLines",0,"nl",{one:"1 regel",other:n(a,"numLines")+" regels"})+" code!"},c.play=function(){return"spelen"},c.puzzleTitle=function(a){return"Puzzel "+v(a,"puzzle_number")+" van "+v(a,"stage_total")},c.repeat=function(){return"herhaal"},c.resetProgram=function(){return"Herstellen"},c.runProgram=function(){return"Ren"},c.runTooltip=function(){return"Voer het programma gedefinieerd door de blokken uit in de werkruimte."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Code weergeven"},c.showGeneratedCode=function(){return"Code weergeven"},c.subtitle=function(){return"een visuele programmeeromgeving"},c.textVariable=function(){return"tekst"},c.tooFewBlocksMsg=function(){return"Je gebruikt alle soorten blokken die je nodig hebt, maar probeer deze soorten vaker te gebruiken om deze puzzel op te lossen."},c.tooManyBlocksMsg=function(){return"Deze puzzel kan worden opgelost met blokken."},c.tooMuchWork=function(){return"Je laat me veel werk doen! Kun je proberen minder te herhalen?"},c.toolboxHeader=function(){return"Blokken"},c.openWorkspace=function(){return"Hoe het werkt"},c.totalNumLinesOfCodeWritten=function(a){return"Totale tijd: "+p(a,"numLines",0,"nl",{one:"1 regel",other:n(a,"numLines")+" regels"})+" code."},c.tryAgain=function(){return"Probeer opnieuw"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Terug naar het vorige niveau"},c.saveToGallery=function(){return"Sla op in je galerij"},c.savedToGallery=function(){return"Opgeslagen in je galerij!"},c.typeCode=function(){return"Typ jouw JavaScript-code onder deze instructies."},c.typeFuncs=function(){return"Beschikbare functies: %1"},c.typeHint=function(){return"Merk op dat de haakjes en puntkomma's vereist zijn."},c.workspaceHeader=function(){return"Zet je blokken hier in elkaar:"},c.infinity=function(){return"Oneindig"},c.rotateText=function(){return"Draai je apparaat."},c.orientationLock=function(){return"Schakel de orientatie blokkering uit in de instellingen van je apparaat."},c.wantToLearn=function(){return"Wil je leren programmeren?"},c.watchVideo=function(){return"Bekijk de video"},c.when=function(){return"wanneer"},c.whenRun=function(){return"wanneer het wordt uitgevoerd"},c.tryHOC=function(){return'Probeer "Hour of Code"'},c.signup=function(){return"Neem deel aan de introductie cursus"},c.hintHeader=function(){return"Een tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.nl=function(a){return 1===a?"one":"other"},c.actor=function(){return"acteur"},c.catActions=function(){return"Acties"},c.catControl=function(){return"Lussen"},c.catEvents=function(){return"Gebeurtenissen"},c.catLogic=function(){return"Logica"},c.catMath=function(){return"Wiskunde"},c.catProcedures=function(){return"Functies"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabelen"},c.changeScoreTooltip=function(){return"Verwijder of voeg een punt toe aan de score."},c.changeScoreTooltipK1=function(){return"Voeg een punt toe aan de score."},c.continue=function(){return"Doorgaan"},c.decrementPlayerScore=function(){return"Verwijder punt"},c.defaultSayText=function(){return"type hier"},c.emotion=function(){return"humeur"},c.finalLevel=function(){return"Gefeliciteerd! je hebt de laatste puzzel opgelost."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"Scoor punt"},c.makeProjectileDisappear=function(){return"Verdwijnen"},c.makeProjectileBounce=function(){return"stuiter"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Laat het projectiel verdwijnen of stuiteren dat net botste."},c.makeYourOwn=function(){return"Maak je eigen verhaal"},c.moveDirectionDown=function(){return"omlaag"},c.moveDirectionLeft=function(){return"link"},c.moveDirectionRight=function(){return"rechts"},c.moveDirectionUp=function(){return"omhoog"},c.moveDirectionRandom=function(){return"willekeurig"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"willekeurige pixels"},c.moveDistanceTooltip=function(){return"Beweeg een figuur de aangegeven afstand in de aangegeven richting."},c.moveSprite=function(){return"verplaats"},c.moveSpriteN=function(a){return"verplaats speler "+v(a,"spriteIndex")},c.moveDown=function(){return"omlaag"},c.moveDownTooltip=function(){return"verplaats een figuur omlaag."},c.moveLeft=function(){return"naar links"},c.moveLeftTooltip=function(){return"verplaats een figuur naar links."},c.moveRight=function(){return"naar rechts"},c.moveRightTooltip=function(){return"verplaats een figuur naar rechts."},c.moveUp=function(){return"omhoog"},c.moveUpTooltip=function(){return"verplaats een figuur omhoog."},c.moveTooltip=function(){return"verplaats een figuur."},c.nextLevel=function(){return"Gefeliciteerd! Je hebt de puzzel voltooid."},c.no=function(){return"Nee"},c.numBlocksNeeded=function(){return"Deze puzzel kan worden opgelost met %1 blokken."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"krakend geluid afspelen"},c.playSoundGoal1=function(){return"doel 1 geluid afspelen"},c.playSoundGoal2=function(){return"doel 2 geluid afspelen"},c.playSoundHit=function(){return"raak-geluid afspelen"},c.playSoundLosePoint=function(){return"speel het punt verloren geluid af"},c.playSoundLosePoint2=function(){return"speel het punt verloren geluid 2 af"},c.playSoundRetro=function(){return"speel retro geluid af"},c.playSoundRubber=function(){return"speel rubber geluid af"},c.playSoundSlap=function(){return"speel klap geluid af"},c.playSoundTooltip=function(){return"Speel het gekozen geluid af."},c.playSoundWinPoint=function(){return"speel het punt gewonnen geluid af"},c.playSoundWinPoint2=function(){return"speel het punt gewonnen geluid 2 af"},c.playSoundWood=function(){return"speel hout geluid af"},c.positionOutTopLeft=function(){return"Naar boven links"},c.positionOutTopRight=function(){return"naar boven rechts"},c.positionTopOutLeft=function(){return"naar boven buiten de linkerpositie"},c.positionTopLeft=function(){return"naar de positie linksboven"},c.positionTopCenter=function(){return"naar de positie midden boven"},c.positionTopRight=function(){return"naar de positie rechtsboven"},c.positionTopOutRight=function(){return"naar boven buiten de rechterpositie"},c.positionMiddleLeft=function(){return"naar de midden linkse positie"},c.positionMiddleCenter=function(){return"naar de middelste positie"},c.positionMiddleRight=function(){return"naar de positie middel rechts"},c.positionBottomOutLeft=function(){return"naar beneden buiten de linkerpositie"},c.positionBottomLeft=function(){return"naar de positie linksonder"},c.positionBottomCenter=function(){return"naar de positie midden onder"},c.positionBottomRight=function(){return"naar de positie rechtsonder"},c.positionBottomOutRight=function(){return"naar beneden buiten de rechterpositie"},c.positionOutBottomLeft=function(){return"naar beneden links"},c.positionOutBottomRight=function(){return"naar benden rechts"},c.positionRandom=function(){return"naar de willekeurige positie"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"willekeurig"},c.reinfFeedbackMsg=function(){return"Klik 'Probeer opnieuw' om terug te gaan naar je spel."},c.repeatForever=function(){return"blijven herhalen"},c.repeatDo=function(){return"doe"},c.repeatForeverTooltip=function(){return"Voer de acties in dit blok zolang het verhaal bezig is."},c.saySprite=function(){return"zeg"},c.saySpriteN=function(a){return"speler "+v(a,"spriteIndex")+" zegt"},c.saySpriteTooltip=function(){return"Toon een tekstballon met de tekst van de speler."},c.scoreText=function(a){return"Punten: "+v(a,"playerScore")},c.setBackground=function(){return"stel de achtergrond in"},c.setBackgroundRandom=function(){return"stel een willekeurige achtergrond in"},c.setBackgroundBlack=function(){return"stel een zwarte achtergrond in"},c.setBackgroundCave=function(){return"stel de grotachtergrond in"},c.setBackgroundCloudy=function(){return"stel de bewolkte achtergrond in"},c.setBackgroundHardcourt=function(){return"stel de tennisveld achtergrond in"},c.setBackgroundNight=function(){return"stel de nachtachtergrond in"},c.setBackgroundUnderwater=function(){return"stel de onderwaterachtergrond in"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Hiermee stel je de achtergrondafbeelding in"},c.setScoreText=function(){return"score instellen"},c.setScoreTextTooltip=function(){return"Hiermee wordt de tekst op het scorebord weergeven."},c.setSpriteEmotionAngry=function(){return"naar een boos humeur"},c.setSpriteEmotionHappy=function(){return"naar een blij humeur"},c.setSpriteEmotionNormal=function(){return"naar een normaal humeur"},c.setSpriteEmotionRandom=function(){return"naar een willekeurig humeur"},c.setSpriteEmotionSad=function(){return"naar een verdrietig humeur"},c.setSpriteEmotionTooltip=function(){return"Zet het humeur van de acteur"},c.setSpriteAlien=function(){return"naar een alien plaatje"},c.setSpriteBat=function(){return"naar een vleermuis plaatje"},c.setSpriteBird=function(){return"naar een vogel plaatje"},c.setSpriteCat=function(){return"naar een kat"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"naar een dinosaurus"},c.setSpriteDog=function(){return"naar een hond"},c.setSpriteDragon=function(){return"naar een draak plaatje"},c.setSpriteGhost=function(){return"naar een spook plaatje"},c.setSpriteHidden=function(){return"naar onzichtbaar"},c.setSpriteHideK1=function(){return"verberg"},c.setSpriteKnight=function(){return"naar een ridder plaatje"},c.setSpriteMonster=function(){return"naar een monster plaatje"},c.setSpriteNinja=function(){return"naar een gemaskerde ninja plaatje"},c.setSpriteOctopus=function(){return"naar een inktvis"},c.setSpritePenguin=function(){return"naar een penguin"},c.setSpritePirate=function(){return"naar een piraat plaatje"},c.setSpritePrincess=function(){return"naar een princes plaatje"},c.setSpriteRandom=function(){return"naar een willekeurige afbeelding"},c.setSpriteRobot=function(){return"naar een robot plaatje"},c.setSpriteShowK1=function(){return"toon"},c.setSpriteSpacebot=function(){return"naar een spacebot plaatje"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"naar een eekhoorn plaatje"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"naar een eenhoorn plaatje"},c.setSpriteWitch=function(){return"naar een heks"},c.setSpriteWizard=function(){return"naar een tovenaar plaatje"},c.setSpritePositionTooltip=function(){return"Verplaats de speler meteen naar een opgegeven plaats."},c.setSpriteK1Tooltip=function(){return"Toont of verbergt de speler."},c.setSpriteTooltip=function(){return"Hiermee wordt de acteur afbeelding ingesteld"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"op willekeurige snelheid"},c.setSpriteSpeedVerySlow=function(){return"naar heel langzaam"},c.setSpriteSpeedSlow=function(){return"naar langzaam"},c.setSpriteSpeedNormal=function(){return"naar normaal"},c.setSpriteSpeedFast=function(){return"naar snel"},c.setSpriteSpeedVeryFast=function(){return"naar heel snel"},c.setSpriteSpeedTooltip=function(){return"Hiermee stel je de snelheid van een speler in"},c.setSpriteZombie=function(){return"naar een zombie plaatje"},c.shareStudioTwitter=function(){return"Lees mijn verhaal. Ik heb dat zelf met @codeorg geschreven"},c.shareGame=function(){return"Deel je verhaal:"},c.showTitleScreen=function(){return"toon titelscherm"},c.showTitleScreenTitle=function(){return"titel"},c.showTitleScreenText=function(){return"tekst"},c.showTSDefTitle=function(){return"typ hier de titel"},c.showTSDefText=function(){return"typ de tekst hier"},c.showTitleScreenTooltip=function(){return"toon een titelscherm met bijbehorende titel en tekst."},c.setSprite=function(){return"stel in"},c.setSpriteN=function(a){return"Zet speler "+v(a,"spriteIndex")},c.soundCrunch=function(){return"kraak"},c.soundGoal1=function(){return"doel 1"},c.soundGoal2=function(){return"doel 2"},c.soundHit=function(){return"raak"},c.soundLosePoint=function(){return"punt verloren"},c.soundLosePoint2=function(){return"punt verloren 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"klap"},c.soundWinPoint=function(){return"punt gewonnen"},c.soundWinPoint2=function(){return"punt gewonnen 2"},c.soundWood=function(){return"hout"},c.speed=function(){return"snelheid"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop speler "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Hiermee wordt een beweging van een acteur gestopt."},c.throwSprite=function(){return"gooi"},c.throwSpriteN=function(a){return"speler "+v(a,"spriteIndex")+" gooit"},c.throwTooltip=function(){return"Gooit een projectiel vanaf de gekozen speler."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wacht op"},c.waitSeconds=function(){return"seconden"},c.waitForClick=function(){return"wacht voor de klik"},c.waitForRandom=function(){return"wacht op willekeurig"},c.waitForHalfSecond=function(){return"wacht een halve seconde"},c.waitFor1Second=function(){return"wacht 1 seconde"},c.waitFor2Seconds=function(){return"wacht 2 seconden"},c.waitFor5Seconds=function(){return"wacht 5 seconden"},c.waitFor10Seconds=function(){return"wacht 10 seconden"},c.waitParamsTooltip=function(){return"Wacht voor een opgegeven aantal seconden of voer nul in om te wachten op een klik."},c.waitTooltip=function(){return"Wacht voor een gekozen tijdsduur of op een klik."},c.whenArrowDown=function(){return"pijltje naar beneden"},c.whenArrowLeft=function(){return"pijltje naar links"},c.whenArrowRight=function(){return"pijltje naar rechts"},c.whenArrowUp=function(){return"pijltje naar boven"},c.whenArrowTooltip=function(){return"Voer de acties hieronder uit als de opgegeven pijltjestoets wordt ingedrukt."},c.whenDown=function(){return"als pijltje naar beneden"},c.whenDownTooltip=function(){return"Voer de acties hieronder uit als pijltje naar beneden wordt ingedrukt."},c.whenGameStarts=function(){return"zodra het verhaal begint"},c.whenGameStartsTooltip=function(){return"Voer de acties hieronder uit als het verhaal begint."},c.whenLeft=function(){return"als pijltje naar links"},c.whenLeftTooltip=function(){return"Voer de acties hieronder uit als pijltje naar links wordt ingedrukt."},c.whenRight=function(){return"als pijltje naar rechts"},c.whenRightTooltip=function(){return"Voer de acties hieronder uit als pijltje naar rechts wordt ingedrukt."},c.whenSpriteClicked=function(){return"als speler geklikt heeft"},c.whenSpriteClickedN=function(a){return"als speler "+v(a,"spriteIndex")+" geklikt heeft"},c.whenSpriteClickedTooltip=function(){return"Voer de acties hieronder uit als op een speler geklikt wordt."},c.whenSpriteCollidedN=function(a){return"als speler "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Voer de acties hieronder uit als een speler een andere speler raakt."},c.whenSpriteCollidedWith=function(){return"raakt"},c.whenSpriteCollidedWithN=function(a){return"raakt speler "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"raakt onderrand"},c.whenSpriteCollidedWithLeftEdge=function(){return"raakt linkerrand"},c.whenSpriteCollidedWithRightEdge=function(){return"raakt rechterrand"},c.whenSpriteCollidedWithTopEdge=function(){return"raakt bovenrand"},c.whenUp=function(){return"als pijltje naar boven"},c.whenUpTooltip=function(){return"Voer de acties hieronder uit als pijltje naar boven wordt ingedrukt."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/no_no/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/no_no/common":40,"../../locale/no_no/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/no_no/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/no_no/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/no_no/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/no_no/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/no_no/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/no_no/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.no=function(a){return 1===a?"one":"other"},c.and=function(){return"og"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Handlinger"},c.catColour=function(){return"Farge"},c.catLogic=function(){return"Logikk"},c.catLists=function(){return"Lister"},c.catLoops=function(){return"Løkker"},c.catMath=function(){return"Matematikk"},c.catProcedures=function(){return"Funksjoner"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabler"},c.codeTooltip=function(){return"Se generert JavaScript-kode."},c.continue=function(){return"Fortsett"},c.dialogCancel=function(){return"Avbryt"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"slutt"},c.emptyBlocksErrorMsg=function(){return'"Gjenta"- eller "Hvis"-blokken må ha andre blokker inne i seg for å fungere. Kontroller at den indre blokken sitter riktig på plass i blokken som er utenfor.'},c.emptyFunctionBlocksErrorMsg=function(){return"Funksjonsblokken må ha andre blokker inni seg for å virke."},c.extraTopBlocks=function(){return"Du har ekstra blokker som ikke er knyttet til en hendelse blokk."},c.finalStage=function(){return"Gratulerer! Du har fullført siste nivå."},c.finalStageTrophies=function(a){return"Gratulerer! Du har fullført siste nivå og vunnet "+p(a,"numTrophies",0,"no",{one:"en pokal",other:n(a,"numTrophies")+" pokaler"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Selv topp universiteter lærer blokk-basert koding (f.eks "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Men under panseret, kan blokkene du har samlet også vises i JavaScript, verdens mest brukte kode språk:"},c.hashError=function(){return"Beklager, '%1' samsvarer ikke med noe lagret program."},c.help=function(){return"Hjelp"},c.hintTitle=function(){return"Tips:"},c.jump=function(){return"Hopp"},c.levelIncompleteError=function(){return"Du bruker alle nødvendige typer blokker, men ikke på riktig måte."},c.listVariable=function(){return"liste"},c.makeYourOwnFlappy=function(){return'Lag ditt eget "Sprette-Spill"'},c.missingBlocksErrorMsg=function(){return"Forsøk en eller flere av blokkene under for å løse denne oppgaven."},c.nextLevel=function(a){return"Gratulerer! Du har fullført oppgave "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Gratulerer! Du har fullført oppgave "+v(a,"puzzleNumber")+" og vunnet "+p(a,"numTrophies",0,"no",{one:"en pokal",other:n(a,"numTrophies")+" pokaler"})+"."},c.nextStage=function(a){return"Gratulerer! Du fullførte "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"no",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Gratulerer! Du har fullført oppgave "+v(a,"puzzleNumber")+". (Men, du kunne ha brukt kun "+p(a,"numBlocks",0,"no",{one:"1 blokk",other:n(a,"numBlocks")+" blokker"})+".)"},c.numLinesOfCodeWritten=function(a){return"Du har akkurat skrevet "+p(a,"numLines",0,"no",{one:"1 linje",other:n(a,"numLines")+" linjer"})+" med kode!"},c.play=function(){return"spill av"},c.puzzleTitle=function(a){return"Oppgave "+v(a,"puzzle_number")+" av "+v(a,"stage_total")},c.repeat=function(){return"gjenta"},c.resetProgram=function(){return"Nullstill"},c.runProgram=function(){return"Start"},c.runTooltip=function(){return"Kjør programmet definert av blokkene i arbeidsområdet."},c.score=function(){return"poengsum"},c.showCodeHeader=function(){return"Vis kode"},c.showGeneratedCode=function(){return"Vis kode"},c.subtitle=function(){return"et visuelt programmeringsopplegg"},c.textVariable=function(){return"tekst"},c.tooFewBlocksMsg=function(){return"Du bruker alle de nødvendige blokktypene, men forsøk å bruke flere av denne typen blokker for å løse denne oppgaven."},c.tooManyBlocksMsg=function(){return"Denne oppgaven kan løses med blokker."},c.tooMuchWork=function(){return"Du fikk meg til å gjøre masse arbeid! Kan du forsøke med mindre repetisjon?"},c.toolboxHeader=function(){return"Blokker"},c.openWorkspace=function(){return"Slik fungerer det"},c.totalNumLinesOfCodeWritten=function(a){return"Totalt: "+p(a,"numLines",0,"no",{one:"1 linje",other:n(a,"numLines")+" linjer"})+" med kode."},c.tryAgain=function(){return"Forsøk igjen"},c.hintRequest=function(){return"Se hint"},c.backToPreviousLevel=function(){return"Tilbake til forrige nivå"},c.saveToGallery=function(){return"Lagre til galleriet"},c.savedToGallery=function(){return"Lagret i galleriet!"},c.typeCode=function(){return"Skriv din JavaScript-kode under disse instruksjonene."},c.typeFuncs=function(){return"Tilgjengelige funksjoner: %1"},c.typeHint=function(){return"Legg merke til at paranteser og semikolon er nødvendig."},c.workspaceHeader=function(){return"Sett sammen blokkene dine her: "},c.infinity=function(){return"Uendelig"},c.rotateText=function(){return"Roter enheten din."},c.orientationLock=function(){return"Skru av roteringslåsen på enheten din."},c.wantToLearn=function(){return"Vil du lære å kode?"},c.watchVideo=function(){return"Se videoen"},c.when=function(){return"når"},c.whenRun=function(){return"når kjørt"},c.tryHOC=function(){return"Prøv Kodetimen"},c.signup=function(){return"Registrer deg for introduksjonskurset"},c.hintHeader=function(){return"Her er et tips:"},c.genericFeedback=function(){return"Se hvordan du endte opp, og prøv å fikse programmet ditt."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.no=function(a){return 1===a?"one":"other"},c.actor=function(){return"skuespiller"},c.catActions=function(){return"Handlinger"},c.catControl=function(){return"Løkker"},c.catEvents=function(){return"Hendelser"},c.catLogic=function(){return"Logikk"},c.catMath=function(){return"Matematikk"},c.catProcedures=function(){return"Funksjoner"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variabler"},c.changeScoreTooltip=function(){return"Legge til eller fjerne et poeng fra poengsummen."},c.changeScoreTooltipK1=function(){return"Legg til ett poeng til poengsummen."},c.continue=function(){return"Fortsett"},c.decrementPlayerScore=function(){return"Fjern punkt"},c.defaultSayText=function(){return"Skriv her"},c.emotion=function(){return"humør"},c.finalLevel=function(){return"Gratulerer! Du har løst den siste oppgaven."},c.hello=function(){return"hallo"},c.helloWorld=function(){return"Hei, verden!"},c.incrementPlayerScore=function(){return"score poeng"},c.makeProjectileDisappear=function(){return"forsvinne"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Gjøre prosjektil som bare kolliderte forsvinner eller spretter."},c.makeYourOwn=function(){return"Lag din egen historie"},c.moveDirectionDown=function(){return"ned"},c.moveDirectionLeft=function(){return"venstre"},c.moveDirectionRight=function(){return"høyre"},c.moveDirectionUp=function(){return"opp"},c.moveDirectionRandom=function(){return"tilfeldig"},c.moveDistance25=function(){return"25 piksler"},c.moveDistance50=function(){return"50 piksler"},c.moveDistance100=function(){return"100 piksler"},c.moveDistance200=function(){return"200 piksler"},c.moveDistance400=function(){return"400 piksler"},c.moveDistancePixels=function(){return"piksler"},c.moveDistanceRandom=function(){return"tilfeldige piksler"},c.moveDistanceTooltip=function(){return"Flytt en skuespiller en bestemt avstand i den angitte retningen."},c.moveSprite=function(){return"flytt"},c.moveSpriteN=function(a){return"flytte skuespiller "+v(a,"spriteIndex")},c.moveDown=function(){return"flytt ned"},c.moveDownTooltip=function(){return"Flytt en skuespiller ned."},c.moveLeft=function(){return"flytt til venstre"},c.moveLeftTooltip=function(){return"flytt en skuespiller til venstre."},c.moveRight=function(){return"flytt høyre"},c.moveRightTooltip=function(){return"flytt en skuespiller til høyre."},c.moveUp=function(){return"flytt opp"},c.moveUpTooltip=function(){return"flytt en skuespiller opp."},c.moveTooltip=function(){return"flytt en skuespiller."},c.nextLevel=function(){return"Gratulerer! Du har fullført denne oppgaven."},c.no=function(){return"Nei"},c.numBlocksNeeded=function(){return"Denne oppgaven kan løses med %1 blokker."},c.ouchExclamation=function(){return"Au!"},c.playSoundCrunch=function(){return"Spill knase-lyd"},c.playSoundGoal1=function(){return"spill mål-lyd 1"},c.playSoundGoal2=function(){return"spill mål-lyd 2"},c.playSoundHit=function(){return"spill treff-lyd"},c.playSoundLosePoint=function(){return"spille miste poeng lyd"},c.playSoundLosePoint2=function(){return"spille miste poeng 2 lyd"},c.playSoundRetro=function(){return"spille retro lyd"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Spill valgt lyd."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"over øverst venstre posisjon"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"tilfeldig"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"gjør"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"Sier"},c.saySpriteN=function(a){return"skuespiller "+v(a,"spriteIndex")+" sier"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Sluttresultat: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"Angi svart bakgrunn"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"Angi en bakgrunn med skyer"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Angir bakgrunnsbilde"},c.setScoreText=function(){return"Angi poengsum"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"til et tilfeldig bilde"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"til et bilde av en heks"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Flytter en skuespiller til den angitte plasseringen."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Angir skuespiller bildet"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"til en tilfeldig fart"},c.setSpriteSpeedVerySlow=function(){return"til en treig fart"},c.setSpriteSpeedSlow=function(){return"til en langsom fart"},c.setSpriteSpeedNormal=function(){return"til en normal fart"},c.setSpriteSpeedFast=function(){return"til en rask fart"},c.setSpriteSpeedVeryFast=function(){return"til en veldig rask fart"},c.setSpriteSpeedTooltip=function(){return"Angir farten til en skuespiller"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Sjekk ut historien jeg lagde. Jeg skrev den selv med @codeorg"},c.shareGame=function(){return"Del din historie:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"tekst"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"Angi"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"knas"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stopp"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stopper en skuespillers bevegelser."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"vent på klikk"},c.waitForRandom=function(){return"Vent på tilfeldig"},c.waitForHalfSecond=function(){return"vente et halvt sekund"},c.waitFor1Second=function(){return"Vent i 1 sekund"},c.waitFor2Seconds=function(){return"Vent i 2 sekunder"},c.waitFor5Seconds=function(){return"Vent i fem sekunder"},c.waitFor10Seconds=function(){return"Vent i 10 sekunder"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Venter i en viss tid eller til et klikk oppstår."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"Når pil ned"},c.whenDownTooltip=function(){return"Utfør handlingene nedenfor når pil ned-tasten trykkes."},c.whenGameStarts=function(){return"Når historien starter"},c.whenGameStartsTooltip=function(){return"Utfør handlingene nedenfor når historien starter."},c.whenLeft=function(){return"Når venstre pil"},c.whenLeftTooltip=function(){return"Utfør handlingene nedenfor når venstre pil-tasten trykkes."},c.whenRight=function(){return"Når høyre pil"},c.whenRightTooltip=function(){return"Utfør handlingene nedenfor når du trykker piltasten høyre."},c.whenSpriteClicked=function(){return"Når skuespilleren blir klikket"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/pl_pl/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/pl_pl/common":40,"../../locale/pl_pl/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/pl_pl/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/pl_pl/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/pl_pl/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/pl_pl/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pl_pl/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pl_pl/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.pl=function(a){return 1==a?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||1!=a&&a%10==1||(a%10>=5&&9>=a%10||a%100>=12&&14>=a%100)&&a==Math.floor(a)?"many":"other"},c.and=function(){return"i"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Działania"},c.catColour=function(){return"Kolor"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Listy"},c.catLoops=function(){return"Pętle"},c.catMath=function(){return"Matematyczne"},c.catProcedures=function(){return"Funkcje"},c.catText=function(){return"Tekstowe"},c.catVariables=function(){return"Zmienne"},c.codeTooltip=function(){return"Zobacz wygenerowany kod JavaScript."},c.continue=function(){return"Dalej"},c.dialogCancel=function(){return"Anuluj"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"Północ"},c.directionSouthLetter=function(){return"Południe"},c.directionEastLetter=function(){return"Wschód"},c.directionWestLetter=function(){return"Zachód"},c.end=function(){return"koniec"},c.emptyBlocksErrorMsg=function(){return"Blok powtórz lub blok jeśli musi zawierać inne bloki w środku, by poprawnie działać. Upewnij się, czy wewnętrzny blok pasuje do zewnętrznego."},c.emptyFunctionBlocksErrorMsg=function(){return"Funkcja blokowania musi mieć inne bloki wewnątrz do pracy."},c.extraTopBlocks=function(){return"Pozostały Ci jeszcze bloki, które nie zostały połączone z blokiem zdarzenia."},c.finalStage=function(){return"Gratulacje! Ukończyłeś ostatni etap."},c.finalStageTrophies=function(a){return"Gratulacje! Ukończyłeś ostatni etap i wygrałeś "+p(a,"numTrophies",0,"pl",{one:"trofeum",other:n(a,"numTrophies")+" trofea"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Nawet najlepsze uczelnie uczą kodowania opartego o bloki (np. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ale bloki które zostały użyte, można również zobaczyć w JavaScript, jednym z najbardziej powszechnie stosowanym języku programowania na świecie:"},c.hashError=function(){return"Przepraszamy, '%1' nie odpowiada żadnemu zapisanemu programowi."},c.help=function(){return"Pomoc"},c.hintTitle=function(){return"Podpowiedź:"},c.jump=function(){return"skacz"},c.levelIncompleteError=function(){return"Używasz wszystkich niezbędnych rodzajów bloków, ale w niewłaściwy sposób."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Utwórz swoją grę Flappy"},c.missingBlocksErrorMsg=function(){return"Spróbuj użyć jednego lub więcej poniższych bloków, by rozwiązać tę łamigłówkę."},c.nextLevel=function(a){return"Gratulacje! Rozwiązałeś Łamigłówkę nr "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Gratulacje! Rozwiązałeś Łamigłówkę nr "+v(a,"puzzleNumber")+" i wygrałeś "+p(a,"numTrophies",0,"pl",{one:"trofeum",other:n(a,"numTrophies")+" trofea"})+"." },c.nextStage=function(a){return"Gratulacje! Ukonczyłeś etap "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"pl",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Gratulacje! Rozwiązałeś Łamigłówkę nr "+v(a,"puzzleNumber")+". (Jednakże, mogłeś użyć jedynie "+p(a,"numBlocks",0,"pl",{one:"1 blok",other:n(a,"numBlocks")+" bloków"})+")"},c.numLinesOfCodeWritten=function(a){return"Właśnie napisałeś "+p(a,"numLines",0,"pl",{one:"1 linię",other:n(a,"numLines")+" linii"})+" kodu!"},c.play=function(){return"Zagraj"},c.puzzleTitle=function(a){return"Łamigłówka "+v(a,"puzzle_number")+" z "+v(a,"stage_total")},c.repeat=function(){return"powtórz"},c.resetProgram=function(){return"Zresetuj"},c.runProgram=function(){return"Biegnij"},c.runTooltip=function(){return"Uruchom program zdefiniowany poprzez bloki w miejscu roboczym."},c.score=function(){return"wynik"},c.showCodeHeader=function(){return"Pokaż kod"},c.showGeneratedCode=function(){return"Pokaż kod"},c.subtitle=function(){return"graficzne środowisko programistyczne"},c.textVariable=function(){return"tekst"},c.tooFewBlocksMsg=function(){return"Używasz wszystkich wymaganych bloków, ale spróbuj użyć ich więcej, aby ukończyć łamigłówkę."},c.tooManyBlocksMsg=function(){return"Ta łamigłówka może być rozwiązana przy pomocy bloków ."},c.tooMuchWork=function(){return"Spowodowałeś, że miałem dużo pracy. Czy możesz zmniejszyć liczbę powtórzeń?"},c.toolboxHeader=function(){return"Bloki"},c.openWorkspace=function(){return"Jak to działa"},c.totalNumLinesOfCodeWritten=function(a){return"Najlepszy zanotowany dotąd wynik: "+p(a,"numLines",0,"pl",{one:"1 linia",other:n(a,"numLines")+" linii"})+" kodu."},c.tryAgain=function(){return"Spróbuj ponownie"},c.hintRequest=function(){return"Zobacz podpowiedź"},c.backToPreviousLevel=function(){return"Wróć do poprzedniego poziomu"},c.saveToGallery=function(){return"Zapisz do swojej galerii"},c.savedToGallery=function(){return"Zapisane w twojej galerii!"},c.typeCode=function(){return"Wpisz swój JavaScript kod poniżej tych instrukcji."},c.typeFuncs=function(){return"Dostępne funkcje:%1"},c.typeHint=function(){return"Zauważ, że nawiasy i średniki są wymagane."},c.workspaceHeader=function(){return"Połącz swoje bloki tutaj: "},c.infinity=function(){return"Nieskończoność"},c.rotateText=function(){return"Obróć swoje urządzenie."},c.orientationLock=function(){return"Wyłącz blokadę orientacji w ustawieniach urządzenia."},c.wantToLearn=function(){return"Czy chcesz nauczyć się kodowania (programowania)?"},c.watchVideo=function(){return"Obejrzyj wideo"},c.when=function(){return"Kiedy"},c.whenRun=function(){return"po uruchomieniu"},c.tryHOC=function(){return"Weź udział w Godzinie kodowania (the Hour Code)"},c.signup=function(){return"Zapisz się na kurs wprowadzający"},c.hintHeader=function(){return"Oto wskazówka:"},c.genericFeedback=function(){return"Zobacz jak skończyłeś, i spróbuj naprawić swój program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.pl=function(a){return 1==a?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||1!=a&&a%10==1||(a%10>=5&&9>=a%10||a%100>=12&&14>=a%100)&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Akcje"},c.catControl=function(){return"Pętle"},c.catEvents=function(){return"Zdarzenia"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematyka"},c.catProcedures=function(){return"Funkcje"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Zmienne"},c.changeScoreTooltip=function(){return"Dodaj lub usuń punkt do wyniku."},c.changeScoreTooltipK1=function(){return"Dodaj punkt do wyniku."},c.continue=function(){return"Kontynuuj"},c.decrementPlayerScore=function(){return"usuń punkt"},c.defaultSayText=function(){return"wprowadź tutaj"},c.emotion=function(){return"nastrój"},c.finalLevel=function(){return"Gratulacje! Rozwiązałeś końcową łamigłówkę."},c.hello=function(){return"cześć"},c.helloWorld=function(){return"Witaj świecie!"},c.incrementPlayerScore=function(){return"wynik punktowy"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Stwórz własną historię"},c.moveDirectionDown=function(){return"dół"},c.moveDirectionLeft=function(){return"lewo"},c.moveDirectionRight=function(){return"prawo"},c.moveDirectionUp=function(){return"góra"},c.moveDirectionRandom=function(){return"losowy"},c.moveDistance25=function(){return"25 pikseli"},c.moveDistance50=function(){return"50 pikseli"},c.moveDistance100=function(){return"100 pikseli"},c.moveDistance200=function(){return"200 pikseli"},c.moveDistance400=function(){return"400 pikseli"},c.moveDistancePixels=function(){return"piksele"},c.moveDistanceRandom=function(){return"losowy piksel"},c.moveDistanceTooltip=function(){return"Przesuń aktora o określoną odległość w zadanym kierunku."},c.moveSprite=function(){return"przesuń"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"przesuń w dół"},c.moveDownTooltip=function(){return"Przesuń aktora w dół."},c.moveLeft=function(){return"przesuń w lewo"},c.moveLeftTooltip=function(){return"Przesuń aktora w lewo."},c.moveRight=function(){return"przesuń w prawo"},c.moveRightTooltip=function(){return"Przesuń aktora w prawo."},c.moveUp=function(){return"przesuń w górę"},c.moveUpTooltip=function(){return"Przesuń aktora w górę."},c.moveTooltip=function(){return"Przesuń aktora."},c.nextLevel=function(){return"Gratulacje! Ukończyłeś tę łamigłówkę."},c.no=function(){return"Nie"},c.numBlocksNeeded=function(){return"Ta łamigłówka może być rozwiązana z użyciem %1 bloków."},c.ouchExclamation=function(){return"Ojej!"},c.playSoundCrunch=function(){return"odtwórz dźwięk chrupania"},c.playSoundGoal1=function(){return"odtwórz dźwięk gola nr 1"},c.playSoundGoal2=function(){return"odtwórz dźwięk gola nr 2"},c.playSoundHit=function(){return"odtwórz dźwięk trafienia"},c.playSoundLosePoint=function(){return"zagraj dzwięk utraty punktu"},c.playSoundLosePoint2=function(){return"zagraj dzwięk utraty punktu nr 2"},c.playSoundRetro=function(){return"zagraj dźwięk retro"},c.playSoundRubber=function(){return"zagraj dźwięk gumy"},c.playSoundSlap=function(){return"zagraj dźwięk klaśnięcia"},c.playSoundTooltip=function(){return"Odtwórz wybrany dźwięk."},c.playSoundWinPoint=function(){return"zagraj dźwięk zdybycia punktu nr 1"},c.playSoundWinPoint2=function(){return"zagraj dźwięk zdybycia punktu nr 2"},c.playSoundWood=function(){return"zagraj dźwięk drewna"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"do górnej lewej pozycji"},c.positionTopCenter=function(){return"do górnej środkowej pozycji"},c.positionTopRight=function(){return"do górnej prawej pozycji"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"do środkowej pozycji z lewej"},c.positionMiddleCenter=function(){return"na środkową pozycję"},c.positionMiddleRight=function(){return"na środkową pozycję z prawej"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"na środkową dolną pozycję z lewej"},c.positionBottomCenter=function(){return"na środkową pozycję na dole"},c.positionBottomRight=function(){return"na dolną pozycję z prawej"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"na losową pozycję"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"losowy"},c.reinfFeedbackMsg=function(){return'Możesz nacisnąć przycisk "Spróbuj ponownie", aby powrócić do swojej opowieści.'},c.repeatForever=function(){return"powtarzaj w nieskończoność"},c.repeatDo=function(){return"wykonaj"},c.repeatForeverTooltip=function(){return"Wykonuj akcje w tym bloku bez przerwy dopóki trwa opowiadanie."},c.saySprite=function(){return"powiedz"},c.saySpriteN=function(a){return"aktor "+v(a,"spriteIndex")+" mówi"},c.saySpriteTooltip=function(){return"Wyświetl dymek z wiadomością skojarzoną z postacią."},c.scoreText=function(a){return"Wynik: "+v(a,"playerScore")},c.setBackground=function(){return"zestaw tło"},c.setBackgroundRandom=function(){return"ustaw losowe tło"},c.setBackgroundBlack=function(){return"ustaw czarne tło"},c.setBackgroundCave=function(){return"ustaw tło jaskini"},c.setBackgroundCloudy=function(){return"ustaw pochmurne tło"},c.setBackgroundHardcourt=function(){return"ustaw tło boiska do tenisa"},c.setBackgroundNight=function(){return"utaw nocne tło"},c.setBackgroundUnderwater=function(){return"ustaw tło podwodne"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Ustawia obraz w tle"},c.setScoreText=function(){return"ustaw wynik"},c.setScoreTextTooltip=function(){return"Ustawia tekst, który będzie pokazany w obszarze wyniku."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"do obrazu obcego"},c.setSpriteBat=function(){return"do obrazu nietoperza"},c.setSpriteBird=function(){return"do obrazu ptaka"},c.setSpriteCat=function(){return"do obrazu kota"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"do obrazu dinozaura"},c.setSpriteDog=function(){return"do obrazu psa"},c.setSpriteDragon=function(){return"do obrazu smoka"},c.setSpriteGhost=function(){return"do obrazu ducha"},c.setSpriteHidden=function(){return"na ukryty obrazek"},c.setSpriteHideK1=function(){return"ukryj"},c.setSpriteKnight=function(){return"do obrazu rycerza"},c.setSpriteMonster=function(){return"do obrazu potwora"},c.setSpriteNinja=function(){return"do obrazu zamaskowanego ninja"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"na losowy obrazek"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"Pokaż"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"do obrazu czarownicy"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Natychmiast przenosi aktora do określonej lokalizacji."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Ustawia obraz aktora"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"na losową prędkość"},c.setSpriteSpeedVerySlow=function(){return"na bardzo wolną prędkość"},c.setSpriteSpeedSlow=function(){return"na wolną prędkość"},c.setSpriteSpeedNormal=function(){return"na normalną prędkość"},c.setSpriteSpeedFast=function(){return"na szybką prędkość"},c.setSpriteSpeedVeryFast=function(){return"na bardzo szybką prędkość"},c.setSpriteSpeedTooltip=function(){return"ustawia prędkość aktora"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Zapoznaj się z opowieścią którą zrobiłem. Stworzyłem ją sam z @codeorg"},c.shareGame=function(){return"Udopstępnij swoją opowieść:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"Tytuł"},c.showTitleScreenText=function(){return"Tekst"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"ustaw"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"chrzęst"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"policzek"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"drewno"},c.speed=function(){return"prędkość"},c.stopSprite=function(){return"zatrzymaj"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"zatrzymaj ruch aktora."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"sekundy"},c.waitForClick=function(){return"poczekaj na kliknięcie"},c.waitForRandom=function(){return"poczekaj na losowe"},c.waitForHalfSecond=function(){return"czekaj pół sekundy"},c.waitFor1Second=function(){return"czekaj sekundę"},c.waitFor2Seconds=function(){return"czekaj 2 sekundy"},c.waitFor5Seconds=function(){return"czekaj 5 sekund"},c.waitFor10Seconds=function(){return"czekaj 10 sekund"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Czeka przez określony czas lub do momentu kliknięcia."},c.whenArrowDown=function(){return"Strzałka w dół"},c.whenArrowLeft=function(){return"Strzałka w lewo"},c.whenArrowRight=function(){return"Strzałka w prawo"},c.whenArrowUp=function(){return"Strzałka w górę"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"gdy strzałka w dół"},c.whenDownTooltip=function(){return"Wykonaj poniższe czynności, gdy wciśnięty jest klawisz strzałki w dół."},c.whenGameStarts=function(){return"gdy opowieść się zacznie"},c.whenGameStartsTooltip=function(){return"Wykonaj poniższe czynności, wraz z rozpoczęciem opowieści."},c.whenLeft=function(){return"gdy strzałka w lewo"},c.whenLeftTooltip=function(){return"Wykonaj poniższe czynności, gdy wciśnięty jest klawisz strzałki w lewo."},c.whenRight=function(){return"gdy strzałka w prawo"},c.whenRightTooltip=function(){return"Wykonaj poniższe czynności, gdy wciśnięty jest klawisz strzałki w prawo."},c.whenSpriteClicked=function(){return"po kliknięciu aktora"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Wykonaj czynności poniżej po kliknięciu na aktora."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Gdy aktor dotknie innego aktora, wykonaj poniższą akcję."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"gdy strzałka w górę"},c.whenUpTooltip=function(){return"Wykonaj poniższe czynności, gdy wciśnięty jest klawisz strzałki w górę."},c.yes=function(){return"Tak"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/pt_br/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/pt_br/common":40,"../../locale/pt_br/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/pt_br/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/pt_br/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/pt_br/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/pt_br/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_br/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_br/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.pt=function(a){return 1===a?"one":"other"},c.and=function(){return"e"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Ações"},c.catColour=function(){return"Cor"},c.catLogic=function(){return"Lógica"},c.catLists=function(){return"Listas"},c.catLoops=function(){return"Laços"},c.catMath=function(){return"Matemática"},c.catProcedures=function(){return"Funções"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variáveis"},c.codeTooltip=function(){return"Veja o código JavaScript gerado."},c.continue=function(){return"Continuar"},c.dialogCancel=function(){return"Cancelar"},c.dialogOK=function(){return"Confirma"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"L"},c.directionWestLetter=function(){return"O"},c.end=function(){return"fim"},c.emptyBlocksErrorMsg=function(){return'Os blocos "Repita" ou "Se" precisam de outros blocos para funcionar. Verifique se o bloco de dentro se ajusta corretamente ao bloco principal.'},c.emptyFunctionBlocksErrorMsg=function(){return"O bloco de função precisa ter outros blocos dentro dele para funcionar."},c.extraTopBlocks=function(){return"blocoSuperiorExtra"},c.finalStage=function(){return"Parabéns! Você concluiu a fase final."},c.finalStageTrophies=function(a){return"Parabéns! Você concluiu a última fase e ganhou "+p(a,"numTrophies",0,"pt",{one:"um troféu",other:n(a,"numTrophies")+" troféus"})+"."},c.finish=function(){return"Concluir"},c.generatedCodeInfo=function(a){return"Mesmo as melhores universidades ensinam codificação em blocos (por exemplo, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Mas na verdade, os blocos que você juntou podem ser vistos em JavaScript, a linguagem de codificação mais usada em todo o mundo:"},c.hashError=function(){return"Nenhum programa salvo corresponde a '%1'."},c.help=function(){return"Ajuda"},c.hintTitle=function(){return"Dica:"},c.jump=function(){return"pule"},c.levelIncompleteError=function(){return"Você está usando todos os tipos de blocos necessários, mas não na ordem certa."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Crie seu próprio jogo Flappy bird"},c.missingBlocksErrorMsg=function(){return"Tente usar um ou mais dos blocos abaixo para resolver esse desafio."},c.nextLevel=function(a){return"Parabéns! Você completou o Desafio "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Parabéns! Você completou o Desafio "+v(a,"puzzleNumber")+" e ganhou "+p(a,"numTrophies",0,"pt",{one:"um troféu",other:n(a,"numTrophies")+" troféus"})+"."},c.nextStage=function(a){return"Parabéns! Você completou "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Parabéns! Você completou "+v(a,"stageName")+" e ganhou "+p(a,"numTrophies",0,"pt",{one:"um troféu",other:n(a,"numTrophies")+" troféus"})+"." },c.numBlocksNeeded=function(a){return"Parabéns! Você completou o Desafio "+v(a,"puzzleNumber")+". (Mas você poderia ter usado apenas "+p(a,"numBlocks",0,"pt",{one:"1 bloco",other:n(a,"numBlocks")+" blocos"})+")."},c.numLinesOfCodeWritten=function(a){return"Você escreveu "+p(a,"numLines",0,"pt",{one:"1 linha",other:n(a,"numLines")+" linhas"})+" de código!"},c.play=function(){return"jogue"},c.puzzleTitle=function(a){return"Desafio "+v(a,"puzzle_number")+" de "+v(a,"stage_total")},c.repeat=function(){return"repita"},c.resetProgram=function(){return"Recomeçar"},c.runProgram=function(){return"Executar"},c.runTooltip=function(){return"Execute o programa definido pelos blocos na área de trabalho."},c.score=function(){return"pontuação"},c.showCodeHeader=function(){return"Mostrar Código"},c.showGeneratedCode=function(){return"Mostrar código"},c.subtitle=function(){return"um ambiente de programação visual"},c.textVariable=function(){return"texto"},c.tooFewBlocksMsg=function(){return"Você está usando todos os tipos necessários de blocos, mas tente usar mais tipos de blocos para completar esse desafio."},c.tooManyBlocksMsg=function(){return"Esse desafio pode ser resolvido com < x id='START_SPAN'/>< x id= 'END_SPAN'/> blocos."},c.tooMuchWork=function(){return"Você me fez trabalhar bastante! Podemos tentar repetindo menos vezes?"},c.toolboxHeader=function(){return"Blocos"},c.openWorkspace=function(){return"Como funciona"},c.totalNumLinesOfCodeWritten=function(a){return"Total: "+p(a,"numLines",0,"pt",{one:"1 linha",other:n(a,"numLines")+" linhas"})+" de código."},c.tryAgain=function(){return"Tente novamente"},c.hintRequest=function(){return"Veja a dica"},c.backToPreviousLevel=function(){return"Voltar ao nível anterior"},c.saveToGallery=function(){return"Salve na sua galeria"},c.savedToGallery=function(){return"Salvo na sua galeria!"},c.typeCode=function(){return"Digite seu código JavaScript abaixo destas instruções."},c.typeFuncs=function(){return"Funções disponíveis: %1"},c.typeHint=function(){return"Observe que os parênteses e os ponto e vírgulas são necessários."},c.workspaceHeader=function(){return"Monte seus blocos aqui: "},c.infinity=function(){return"Infinito"},c.rotateText=function(){return"Gire seu dispositivo."},c.orientationLock=function(){return"Desative o bloqueio de orientação nas configurações do dispositivo."},c.wantToLearn=function(){return"Quer aprender a programar?"},c.watchVideo=function(){return"Assista ao vídeo"},c.when=function(){return"quando"},c.whenRun=function(){return"quando executar"},c.tryHOC=function(){return"Tente a Hora do Código"},c.signup=function(){return"Cadastre-se para o curso introdutório"},c.hintHeader=function(){return"Aqui vai uma dica:"},c.genericFeedback=function(){return"Veja como você terminou e tente consertar seu programa."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.pt=function(a){return 1===a?"one":"other"},c.actor=function(){return"personagem"},c.catActions=function(){return"Ações"},c.catControl=function(){return"Laços"},c.catEvents=function(){return"Eventos"},c.catLogic=function(){return"Lógica"},c.catMath=function(){return"Matemática"},c.catProcedures=function(){return"Funções"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variáveis"},c.changeScoreTooltip=function(){return"Adiciona ou remove um ponto."},c.changeScoreTooltipK1=function(){return"Adiciona um ponto."},c.continue=function(){return"Continuar"},c.decrementPlayerScore=function(){return"remova o ponto"},c.defaultSayText=function(){return"digite aqui"},c.emotion=function(){return"humor"},c.finalLevel=function(){return"Parabéns! Você resolveu o desafio final."},c.hello=function(){return"olá"},c.helloWorld=function(){return"Olá, mundo!"},c.incrementPlayerScore=function(){return"marque o ponto"},c.makeProjectileDisappear=function(){return"desapareça"},c.makeProjectileBounce=function(){return"quicar"},c.makeProjectileBlueFireball=function(){return"crie bola de fogo azul"},c.makeProjectilePurpleFireball=function(){return"crie bola de fogo roxa"},c.makeProjectileRedFireball=function(){return"crie bola de fogo vermelha"},c.makeProjectileYellowHearts=function(){return"crie corações amarelos"},c.makeProjectilePurpleHearts=function(){return"crie corações roxos"},c.makeProjectileRedHearts=function(){return"crie corações vermelhos"},c.makeProjectileTooltip=function(){return"Faça o projétil que colidiu desaparecer ou quicar."},c.makeYourOwn=function(){return"Crie sua Própria História"},c.moveDirectionDown=function(){return"baixo"},c.moveDirectionLeft=function(){return"esquerda"},c.moveDirectionRight=function(){return"direita"},c.moveDirectionUp=function(){return"cima"},c.moveDirectionRandom=function(){return"aleatório"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"pixels aleatórios"},c.moveDistanceTooltip=function(){return"Move um personagem em uma distância específica na direção indicada."},c.moveSprite=function(){return"mova"},c.moveSpriteN=function(a){return"mova o personagem "+v(a,"spriteIndex")},c.moveDown=function(){return"mova para baixo"},c.moveDownTooltip=function(){return"Move um personagem para baixo."},c.moveLeft=function(){return"mova à esquerda"},c.moveLeftTooltip=function(){return"Move um personagem à esquerda."},c.moveRight=function(){return"mova à direita"},c.moveRightTooltip=function(){return"Move um personagem à direita."},c.moveUp=function(){return"mova para cima"},c.moveUpTooltip=function(){return"Move um personagem para cima."},c.moveTooltip=function(){return"Move um personagem."},c.nextLevel=function(){return"Parabéns! Você completou o desafio."},c.no=function(){return"Não"},c.numBlocksNeeded=function(){return"Esse desafio pode ser resolvido com blocos de %1."},c.ouchExclamation=function(){return"Ai!"},c.playSoundCrunch=function(){return"reproduza som de trituração"},c.playSoundGoal1=function(){return"reproduza som de objetivo alcançado 1"},c.playSoundGoal2=function(){return"reproduza som de objetivo alcançado 2"},c.playSoundHit=function(){return"reproduza som de pancada"},c.playSoundLosePoint=function(){return"reproduza som de ponto perdido"},c.playSoundLosePoint2=function(){return"reproduza som de ponto perdido 2"},c.playSoundRetro=function(){return"reproduza som retrô"},c.playSoundRubber=function(){return"reproduza som de borracha"},c.playSoundSlap=function(){return"reproduza som de palmas"},c.playSoundTooltip=function(){return"Reproduz o som escolhido."},c.playSoundWinPoint=function(){return"reproduza som de ponto ganho"},c.playSoundWinPoint2=function(){return"reproduza som de ponto ganho 2"},c.playSoundWood=function(){return"reproduza som de madeira"},c.positionOutTopLeft=function(){return"para a posição superior esquerda"},c.positionOutTopRight=function(){return"para a posição superior direita"},c.positionTopOutLeft=function(){return"para a posição superior esquerda externa"},c.positionTopLeft=function(){return"para a posição superior esquerda"},c.positionTopCenter=function(){return"para a posição superior central"},c.positionTopRight=function(){return"para a posição superior direita"},c.positionTopOutRight=function(){return"para a posição superior direita externa"},c.positionMiddleLeft=function(){return"para a posição central esquerda"},c.positionMiddleCenter=function(){return"para o meio da posição central"},c.positionMiddleRight=function(){return"para a posição central direita"},c.positionBottomOutLeft=function(){return"para a posição inferior esquerda externa"},c.positionBottomLeft=function(){return"para a posição inferior esquerda"},c.positionBottomCenter=function(){return"para a posição inferior central"},c.positionBottomRight=function(){return"para a posição inferior direita"},c.positionBottomOutRight=function(){return"para a posição inferior direita externa"},c.positionOutBottomLeft=function(){return"para a posição inferior esquerda"},c.positionOutBottomRight=function(){return"para a posição inferior direita"},c.positionRandom=function(){return"para a posição aleatória"},c.projectileBlueFireball=function(){return"bola de fogo azul"},c.projectilePurpleFireball=function(){return"bola de fogo roxa"},c.projectileRedFireball=function(){return"bola de fogo vermelha"},c.projectileYellowHearts=function(){return"corações amarelos"},c.projectilePurpleHearts=function(){return"corações roxos"},c.projectileRedHearts=function(){return"corações vermelhos"},c.projectileRandom=function(){return"aleatório"},c.reinfFeedbackMsg=function(){return'Você pode clicar em "Tente novamente" para voltar a jogar o jogo.'},c.repeatForever=function(){return"repita infinitamente"},c.repeatDo=function(){return"faça"},c.repeatForeverTooltip=function(){return"Execute as ações neste bloco repetidamente enquanto a história é contada."},c.saySprite=function(){return"diga"},c.saySpriteN=function(a){return"personagem "+v(a,"spriteIndex")+" diz"},c.saySpriteTooltip=function(){return"Faz surgir um balão de fala com o texto relacionado ao personagem especificada."},c.scoreText=function(a){return"Pontuação: "+v(a,"playerScore")},c.setBackground=function(){return"defina o plano de fundo"},c.setBackgroundRandom=function(){return"defina o plano de fundo aleatoriamente"},c.setBackgroundBlack=function(){return"defina o plano de fundo preto"},c.setBackgroundCave=function(){return"defina o plano de fundo de caverna"},c.setBackgroundCloudy=function(){return"defina o plano de fundo de nuvens"},c.setBackgroundHardcourt=function(){return"defina o plano de fundo de quadra esportiva"},c.setBackgroundNight=function(){return"defina o plano de fundo de noite"},c.setBackgroundUnderwater=function(){return"defina o plano de fundo subaquático"},c.setBackgroundCity=function(){return"defina o plano de fundo de cidade"},c.setBackgroundDesert=function(){return"defina o plano de fundo de deserto"},c.setBackgroundRainbow=function(){return"defina o plano de fundo de arco-íris"},c.setBackgroundSoccer=function(){return"defina o plano de fundo de futebol"},c.setBackgroundSpace=function(){return"defina o plano de fundo de espaço sideral"},c.setBackgroundTennis=function(){return"defina o plano de fundo de tênis"},c.setBackgroundWinter=function(){return"defina o plano de fundo de inverno"},c.setBackgroundTooltip=function(){return"Define a imagem de fundo"},c.setScoreText=function(){return"defina a pontuação"},c.setScoreTextTooltip=function(){return"Define o texto que vai ser exibido na pontuação."},c.setSpriteEmotionAngry=function(){return"como bravo"},c.setSpriteEmotionHappy=function(){return"como feliz"},c.setSpriteEmotionNormal=function(){return"como normal"},c.setSpriteEmotionRandom=function(){return"como aleatório"},c.setSpriteEmotionSad=function(){return"como triste"},c.setSpriteEmotionTooltip=function(){return"Define o humor do personagem"},c.setSpriteAlien=function(){return"como um alienígena"},c.setSpriteBat=function(){return"para uma imagem de morcego"},c.setSpriteBird=function(){return"para uma imagem de pássaro"},c.setSpriteCat=function(){return"para uma imagem de gato"},c.setSpriteCaveBoy=function(){return"para a imagem de um menino das cavernas"},c.setSpriteCaveGirl=function(){return"para a imagem de uma menina das cavernas"},c.setSpriteDinosaur=function(){return"para uma imagem de dinossauro"},c.setSpriteDog=function(){return"para uma imagem de cachorro"},c.setSpriteDragon=function(){return"para uma imagem de dragão"},c.setSpriteGhost=function(){return"como um fantasma"},c.setSpriteHidden=function(){return"para uma imagem oculta"},c.setSpriteHideK1=function(){return"oculte"},c.setSpriteKnight=function(){return"como um cavaleiro"},c.setSpriteMonster=function(){return"como um monstro"},c.setSpriteNinja=function(){return"como um ninja mascarado"},c.setSpriteOctopus=function(){return"para uma imagem de polvo"},c.setSpritePenguin=function(){return"para uma imagem de pinguim"},c.setSpritePirate=function(){return"como um pirata"},c.setSpritePrincess=function(){return"como uma princesa"},c.setSpriteRandom=function(){return"para uma imagem aleatória"},c.setSpriteRobot=function(){return"como um robô"},c.setSpriteShowK1=function(){return"mostre"},c.setSpriteSpacebot=function(){return"como um robô espacial"},c.setSpriteSoccerGirl=function(){return"para a imagem de uma jogadora de futebol"},c.setSpriteSoccerBoy=function(){return"para a imagem de um jogador de futebol"},c.setSpriteSquirrel=function(){return"para uma imagem de esquilo"},c.setSpriteTennisGirl=function(){return"para a imagem de uma jogadora de tênis"},c.setSpriteTennisBoy=function(){return"para a imagem de um jogador de tênis"},c.setSpriteUnicorn=function(){return"como um unicórnio"},c.setSpriteWitch=function(){return"para uma imagem de bruxa"},c.setSpriteWizard=function(){return"para uma imagem de mago"},c.setSpritePositionTooltip=function(){return"Move um personagem instantaneamente para o local especificado."},c.setSpriteK1Tooltip=function(){return"Mostra ou oculta o personagem especificado."},c.setSpriteTooltip=function(){return"Define a imagem do personagem"},c.setSpriteSizeRandom=function(){return"para um tamanho aleatório"},c.setSpriteSizeVerySmall=function(){return"para um tamanho muito pequeno"},c.setSpriteSizeSmall=function(){return"para um tamanho pequeno"},c.setSpriteSizeNormal=function(){return"para um tamanho normal"},c.setSpriteSizeLarge=function(){return"para um tamanho grande"},c.setSpriteSizeVeryLarge=function(){return"para um tamanho muito grande"},c.setSpriteSizeTooltip=function(){return"Define o tamanho de um personagem"},c.setSpriteSpeedRandom=function(){return"para uma velocidade aleatória"},c.setSpriteSpeedVerySlow=function(){return"para uma velocidade bem lenta"},c.setSpriteSpeedSlow=function(){return"para uma velocidade lenta"},c.setSpriteSpeedNormal=function(){return"para uma velocidade normal"},c.setSpriteSpeedFast=function(){return"para uma velocidade rápida"},c.setSpriteSpeedVeryFast=function(){return"para uma velocidade bem rápida"},c.setSpriteSpeedTooltip=function(){return"Define a velocidade de um personagem"},c.setSpriteZombie=function(){return"como um zumbi"},c.shareStudioTwitter=function(){return"Dê uma na olhada na história que eu fiz. Eu mesmo a escrevi com a @codeorg"},c.shareGame=function(){return"Compartilhe sua história:"},c.showTitleScreen=function(){return"mostre a tela principal"},c.showTitleScreenTitle=function(){return"título"},c.showTitleScreenText=function(){return"texto"},c.showTSDefTitle=function(){return"digite o título aqui"},c.showTSDefText=function(){return"digite o texto aqui"},c.showTitleScreenTooltip=function(){return"Mostrar um tela de título com o título e o texto associados."},c.setSprite=function(){return"defina"},c.setSpriteN=function(a){return"defina o personagem "+v(a,"spriteIndex")},c.soundCrunch=function(){return"triture"},c.soundGoal1=function(){return"objetivo 1"},c.soundGoal2=function(){return"objetivo 2"},c.soundHit=function(){return"bata"},c.soundLosePoint=function(){return"perder ponto"},c.soundLosePoint2=function(){return"perder ponto 2"},c.soundRetro=function(){return"retrô"},c.soundRubber=function(){return"borracha"},c.soundSlap=function(){return"tapa"},c.soundWinPoint=function(){return"ganhar ponto"},c.soundWinPoint2=function(){return"ganhar ponto 2"},c.soundWood=function(){return"madeira"},c.speed=function(){return"velocidade"},c.stopSprite=function(){return"pare"},c.stopSpriteN=function(a){return"pare o personagem "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Para o movimento de um personagem."},c.throwSprite=function(){return"lance"},c.throwSpriteN=function(a){return"personagem "+v(a,"spriteIndex")+" lança"},c.throwTooltip=function(){return"Lança um projétil com o personagem especificado."},c.vanish=function(){return"desapareça"},c.vanishActorN=function(a){return"faça o personagem desaparecer "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Faz o personagem desaparecer."},c.waitFor=function(){return"espere por"},c.waitSeconds=function(){return"segundos"},c.waitForClick=function(){return"espere pelo clique"},c.waitForRandom=function(){return"espere aleatoriamente"},c.waitForHalfSecond=function(){return"espere por meio segundo"},c.waitFor1Second=function(){return"espere por 1 segundo"},c.waitFor2Seconds=function(){return"espere por 2 segundos"},c.waitFor5Seconds=function(){return"espere por 5 segundos"},c.waitFor10Seconds=function(){return"espere por 10 segundos"},c.waitParamsTooltip=function(){return"Espera por um número determinado de segundos ou usa o zero para esperar até que ocorra um clique."},c.waitTooltip=function(){return"Espera uma determinada quantia de tempo ou até que ocorra um clique."},c.whenArrowDown=function(){return"seta para baixo"},c.whenArrowLeft=function(){return"seta para a esquerda"},c.whenArrowRight=function(){return"seta para a direita"},c.whenArrowUp=function(){return"seta para cima"},c.whenArrowTooltip=function(){return"Execute as ações abaixo quando a tecla com a seta especificada estiver pressionada."},c.whenDown=function(){return"quando a seta para baixo estiver pressionada"},c.whenDownTooltip=function(){return"Execute as ações abaixo quando a tecla com a seta para baixo estiver pressionada."},c.whenGameStarts=function(){return"quando a história começa"},c.whenGameStartsTooltip=function(){return"Execute as ações abaixo quando a história começar."},c.whenLeft=function(){return"quando a seta à esquerda estiver pressionada"},c.whenLeftTooltip=function(){return"Execute as ações abaixo quando a tecla com a seta à esquerda estiver pressionada."},c.whenRight=function(){return"quando a seta à direita estiver pressionada"},c.whenRightTooltip=function(){return"Execute as ações abaixo quando a tecla com a seta à direita estiver pressionada."},c.whenSpriteClicked=function(){return"quando o personagem for clicado"},c.whenSpriteClickedN=function(a){return"quando o personagem "+v(a,"spriteIndex")+" for clicado"},c.whenSpriteClickedTooltip=function(){return"Execute as ações abaixo quando um personagem for clicado."},c.whenSpriteCollidedN=function(a){return"quando o personagem "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute as ações abaixo quando um personagem tocar em outro personagem."},c.whenSpriteCollidedWith=function(){return"toca"},c.whenSpriteCollidedWithN=function(a){return"toca o personagem "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"toca a bola de fogo azul"},c.whenSpriteCollidedWithPurpleFireball=function(){return"toca a bola de fogo roxa"},c.whenSpriteCollidedWithRedFireball=function(){return"toca a bola de fogo vermelha"},c.whenSpriteCollidedWithYellowHearts=function(){return"toca os corações amarelos"},c.whenSpriteCollidedWithPurpleHearts=function(){return"toca os corações roxos"},c.whenSpriteCollidedWithRedHearts=function(){return"toca os corações vermelhos"},c.whenSpriteCollidedWithBottomEdge=function(){return"toca a borda inferior"},c.whenSpriteCollidedWithLeftEdge=function(){return"toca a borda esquerda"},c.whenSpriteCollidedWithRightEdge=function(){return"toca a borda direita"},c.whenSpriteCollidedWithTopEdge=function(){return"toca a borda superior"},c.whenUp=function(){return"quando a seta para cima estiver pressionada"},c.whenUpTooltip=function(){return"Execute as ações abaixo quando a tecla com a seta para cima estiver pressionada."},c.yes=function(){return"Sim"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/pt_pt/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/pt_pt/common":40,"../../locale/pt_pt/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/pt_pt/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/pt_pt/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/pt_pt/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/pt_pt/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/pt_pt/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/pt_pt/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.pt=function(a){return 1===a?"one":"other"},c.and=function(){return"e"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Ações"},c.catColour=function(){return"Cor"},c.catLogic=function(){return"Lógica"},c.catLists=function(){return"Listas"},c.catLoops=function(){return"Ciclos"},c.catMath=function(){return"Matemática"},c.catProcedures=function(){return"Funções"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variáveis"},c.codeTooltip=function(){return"Vê o código gerado em Javascript."},c.continue=function(){return"Continuar"},c.dialogCancel=function(){return"Cancelar"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"O"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'Os blocos "Repetir" ou "Se" precisam de incluir blocos dentro para funcionar. Garante que o bloco interno encaixa correctamente dentro do bloco que o contém.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Tens blocos extras que não estão ligados a um bloco de evento."},c.finalStage=function(){return"Parabéns! Completaste a etapa final."},c.finalStageTrophies=function(a){return"Parabéns! Completaste a etapa final e ganhaste "+p(a,"numTrophies",0,"pt",{one:"troféu",other:n(a,"numTrophies")+" troféus"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Mesmo as melhores universidades ensinam código em blocos (por exemplo, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Mas na verdade, os blocos que juntaste podem ser vistos em JavaScript, a linguagem de código mais usada em todo o mundo:"},c.hashError=function(){return"Desculpa, '%1' não corresponde a qualquer programa gravado."},c.help=function(){return"Ajuda"},c.hintTitle=function(){return"Dica:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Estás a usar todos os tipos necessários de blocos, mas não da forma certa."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Cria o teu próprio jogo Flappy"},c.missingBlocksErrorMsg=function(){return"Tenta um ou mais blocos dos seguintes para resolver o puzzle."},c.nextLevel=function(a){return"Parabéns! Completaste o puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Parabéns! Completaste o puzzle "+v(a,"puzzleNumber")+" e ganhaste "+p(a,"numTrophies",0,"pt",{one:"troféu",other:n(a,"numTrophies")+" troféus"})+"."},c.nextStage=function(a){return"Parabéns! Completaste "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Parabéns! Completaste "+v(a,"stageName")+" e ganhaste "+p(a,"numTrophies",0,"pt",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Parabéns! Completaste o puzzle "+v(a,"puzzleNumber")+". (Apesar disso, poderias ter usado somente "+p(a,"numBlocks",0,"pt",{one:"1 bloco",other:n(a,"numBlocks")+" blocos"})+".)"},c.numLinesOfCodeWritten=function(a){return"Acabaste de escrever "+p(a,"numLines",0,"pt",{one:"1 linha",other:n(a,"numLines")+" linhas"})+" de código!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" de "+v(a,"stage_total")},c.repeat=function(){return"repita"},c.resetProgram=function(){return"Repor"},c.runProgram=function(){return"Executa o programa"},c.runTooltip=function(){return"Executa o programa definido pelos blocos na área de trabalho."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Mostrar o Código"},c.showGeneratedCode=function(){return"Mostrar o código"},c.subtitle=function(){return"um ambiente de programação visual"},c.textVariable=function(){return"texto"},c.tooFewBlocksMsg=function(){return"Estás a usar todos os tipos de blocos necessários, mas tenta usar mais alguns desses blocos para completar este puzzle."},c.tooManyBlocksMsg=function(){return"Este puzzle pode ser resolvido com blocos."},c.tooMuchWork=function(){return"Fizeste-me ter muito trabalho! Podes tentar repetir menos vezes?"},c.toolboxHeader=function(){return"Blocos"},c.openWorkspace=function(){return"Como funciona"},c.totalNumLinesOfCodeWritten=function(a){return"Total de todos os tempos: "+p(a,"numLines",0,"pt",{one:"1 linha",other:n(a,"numLines")+" linhas"})+" de código."},c.tryAgain=function(){return"Tentar novamente"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Voltar ao nível anterior"},c.saveToGallery=function(){return"Guarda na tua galeria de imagens"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Coloca o teu código Javascript abaixo destas instruções."},c.typeFuncs=function(){return"Funções disponíveis:%1"},c.typeHint=function(){return"Repara que os parêntesis e ponto e vírgula são necessários."},c.workspaceHeader=function(){return"Monta os teus blocos aqui: "},c.infinity=function(){return"Infinito"},c.rotateText=function(){return"Roda o teu dispositivo."},c.orientationLock=function(){return"Desativa o bloqueio de orientação em configurações do dispositivo."},c.wantToLearn=function(){return"Queres aprender a programar com código?"},c.watchVideo=function(){return"Vê o vídeo"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Exprimenta a Hora do Código"},c.signup=function(){return"Inscreve-te para o curso de introdução"},c.hintHeader=function(){return"Aqui vai uma dica:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.pt=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Ações"},c.catControl=function(){return"Ciclos"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Lógica"},c.catMath=function(){return"Matemática"},c.catProcedures=function(){return"Funções"},c.catText=function(){return"Texto"},c.catVariables=function(){return"Variáveis"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Continua"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Parabéns! Resolveste o puzzle final."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"aumenta um ponto"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Faz a tua própria história"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"aleatório"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move para baixo"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move para a esquerda"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move para a direita"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move para cima"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Parabéns! Completaste este puzzle."},c.no=function(){return"Não"},c.numBlocksNeeded=function(){return"Este puzzle pode ser resolvido com blocos de %1 ."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"tocar som do objetivo 1"},c.playSoundGoal2=function(){return"tocar som do objetivo 2"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"tocar som de ponto perdido"},c.playSoundLosePoint2=function(){return"tocar som de ponto perdido 2"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"tocar som de borracha"},c.playSoundSlap=function(){return"tocar som de chapada"},c.playSoundTooltip=function(){return"Tocar o som escolhido."},c.playSoundWinPoint=function(){return"tocar som de ponto ganho"},c.playSoundWinPoint2=function(){return"tocar som de ponto ganho 2"},c.playSoundWood=function(){return"tocar som de madeira"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"aleatório"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"Faça"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Pontuação: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"texto"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"definir"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Sim"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ro_ro/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ro_ro/common":40,"../../locale/ro_ro/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ro_ro/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ro_ro/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ro_ro/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ro_ro/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ro_ro/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ro_ro/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ro=function(a){return 1==a?"one":0===a||1!=a&&a%100>=1&&19>=a%100&&a==Math.floor(a)?"few":"other"},c.and=function(){return"și"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Acţiuni"},c.catColour=function(){return"Culoare"},c.catLogic=function(){return"Logică"},c.catLists=function(){return"Liste"},c.catLoops=function(){return"Bucle"},c.catMath=function(){return"Matematică"},c.catProcedures=function(){return"Funcţii"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variabile"},c.codeTooltip=function(){return"Vezi codul JavaScript generat."},c.continue=function(){return"Continuă"},c.dialogCancel=function(){return"Revocare"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"V"},c.end=function(){return"șfâșit"},c.emptyBlocksErrorMsg=function(){return'Blocul "Repetă" sau "Dacă" trebuie să aibe alte blocuri în interiorul său pentru a putea funcționa. Asigură-te că blocul interior se încadrează corect în blocul care îl conține.'},c.emptyFunctionBlocksErrorMsg=function(){return"Blocul de funcţie trebuie să aibă alte blocuri în interior ca să funcţioneze."},c.extraTopBlocks=function(){return"Ai blocuri suplimentare care nu sunt ataşate la un bloc de eveniment."},c.finalStage=function(){return"Felicitări! Ai terminat ultima etapă."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"ro",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finalizare"},c.generatedCodeInfo=function(a){return"Chiar și în universităţi de top se predă programarea bazată pe blocuri de coduri (de exemplu, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Dar în esență, blocurile de cod pe care le-ai compus pot fi de asemenea afișate în JavaScript, limbajul de programare cel mai utilizat din lume:"},c.hashError=function(){return"Ne pare rău, '%1' nu corespunde cu nici un program salvat."},c.help=function(){return"Ajutor"},c.hintTitle=function(){return"Sugestie:"},c.jump=function(){return"sări"},c.levelIncompleteError=function(){return"Utilizezi toate tipurile de blocuri necesare, dar nu așa cum trebuie."},c.listVariable=function(){return"listă"},c.makeYourOwnFlappy=function(){return"Crează-ți propriul tău joc Flappy"},c.missingBlocksErrorMsg=function(){return"Încearcă unul sau mai multe blocuri de mai jos pentru a rezolva acest puzzle."},c.nextLevel=function(a){return"Felicitări! Ai terminat Puzzle-ul "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"ro",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.nextStage=function(a){return"Felicitări! Ai terminat "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"ro",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"ro",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"ro",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"juca"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" din "+v(a,"stage_total")},c.repeat=function(){return"repetă"},c.resetProgram=function(){return"Resetează"},c.runProgram=function(){return"Rulează"},c.runTooltip=function(){return"Rulează programul definit de blocuri în spațiul de lucru."},c.score=function(){return"scor"},c.showCodeHeader=function(){return"Arată Codul"},c.showGeneratedCode=function(){return"Arată codul"},c.subtitle=function(){return"un mediu de programare vizual"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Folosești toate tipurile necesare de blocuri, dar încearcă să utilizezi mai multe din aceste tipuri de blocuri pentru a completa puzzle-ul."},c.tooManyBlocksMsg=function(){return"Acest puzzle poate fi rezolvat cu blocuri ."},c.tooMuchWork=function(){return"M-ai făcut să lucrez foarte mult! Ai putea să încerci să repeți de mai puține ori?"},c.toolboxHeader=function(){return"Blocuri"},c.openWorkspace=function(){return"Cum funcţionează"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"ro",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Încearcă din nou"},c.hintRequest=function(){return"Arată indiciu"},c.backToPreviousLevel=function(){return"Înapoi la nivelul anterior"},c.saveToGallery=function(){return"Salvează în galeria proprie"},c.savedToGallery=function(){return"Salvat în galeria proprie!"},c.typeCode=function(){return"Tastează codul tău JavaScript sub aceste înstrucțiuni. "},c.typeFuncs=function(){return"Funcţii disponibile:%1"},c.typeHint=function(){return"Reţine că parantezele şi punct şi virgulă sunt absolut necesare."},c.workspaceHeader=function(){return"Asamblează-ţi blocurile aici: "},c.infinity=function(){return"Infinit"},c.rotateText=function(){return"Rotește dispozitivul tău."},c.orientationLock=function(){return"Oprește blocarea de orientare în setările dispozitivului."},c.wantToLearn=function(){return"Vrei să înveți să codezi?"},c.watchVideo=function(){return"Urmărește clipul video"},c.when=function(){return"când"},c.whenRun=function(){return"când alergi"},c.tryHOC=function(){return"Încearcă Ora de Cod"},c.signup=function(){return"Înscrie-te la cursul introductiv"},c.hintHeader=function(){return"Iată un sfat:"},c.genericFeedback=function(){return"Uită-te cum ai ajuns, şi încearcă să-ți stabilești programul tău."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ro=function(a){return 1==a?"one":0===a||1!=a&&a%100>=1&&19>=a%100&&a==Math.floor(a)?"few":"other"},c.actor=function(){return"actorul"},c.catActions=function(){return"Acţiuni"},c.catControl=function(){return"Bucle"},c.catEvents=function(){return"Evenimente"},c.catLogic=function(){return"Logică"},c.catMath=function(){return"Matematică"},c.catProcedures=function(){return"Funcţii"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variabile"},c.changeScoreTooltip=function(){return"Adăugaţi sau eliminaţi un punct la scor."},c.changeScoreTooltipK1=function(){return"Adăuga un punct la scor."},c.continue=function(){return"Continuă"},c.decrementPlayerScore=function(){return"elimina punct"},c.defaultSayText=function(){return"tastează aici"},c.emotion=function(){return"starea de spirit"},c.finalLevel=function(){return"Felicitări! Ai rezolvat puzzle-ul final."},c.hello=function(){return"bună"},c.helloWorld=function(){return"Salutare lume!"},c.incrementPlayerScore=function(){return"punct de scor"},c.makeProjectileDisappear=function(){return"dispar"},c.makeProjectileBounce=function(){return"saritura"},c.makeProjectileBlueFireball=function(){return"fă o minge de foc albastră"},c.makeProjectilePurpleFireball=function(){return"fă o minge de foc mov"},c.makeProjectileRedFireball=function(){return"fă o minge de foc roşie"},c.makeProjectileYellowHearts=function(){return"fă inimi galbene"},c.makeProjectilePurpleHearts=function(){return"fă inimi mov"},c.makeProjectileRedHearts=function(){return"fă inimi roşii"},c.makeProjectileTooltip=function(){return"Fă proiectilul care tocmai s-a ciocnit să dispară au să sară."},c.makeYourOwn=function(){return"Creează-ți propria poveste"},c.moveDirectionDown=function(){return"jos"},c.moveDirectionLeft=function(){return"stânga"},c.moveDirectionRight=function(){return"dreapta"},c.moveDirectionUp=function(){return"sus"},c.moveDirectionRandom=function(){return"aleatoriu"},c.moveDistance25=function(){return"25 de pixeli"},c.moveDistance50=function(){return"50 de pixeli"},c.moveDistance100=function(){return"100 de pixeli"},c.moveDistance200=function(){return"200 de pixeli"},c.moveDistance400=function(){return"400 de pixeli"},c.moveDistancePixels=function(){return"pixeli"},c.moveDistanceRandom=function(){return"număr aleatoriu de pixeli"},c.moveDistanceTooltip=function(){return"Mută un actor o distanță anume în direcția specificată."},c.moveSprite=function(){return"mută"},c.moveSpriteN=function(a){return"muta actorul "+v(a,"spriteIndex")},c.moveDown=function(){return"mută în jos"},c.moveDownTooltip=function(){return"Mută un actor în jos."},c.moveLeft=function(){return"mută la stânga"},c.moveLeftTooltip=function(){return"Mută un actor la stânga."},c.moveRight=function(){return"mută la dreapta"},c.moveRightTooltip=function(){return"Mută un actor la dreapta."},c.moveUp=function(){return"mută în sus"},c.moveUpTooltip=function(){return"Mută un actor în sus."},c.moveTooltip=function(){return"Mută un actor."},c.nextLevel=function(){return"Felicitări! Ai finalizat acest puzzle."},c.no=function(){return"Nu"},c.numBlocksNeeded=function(){return"Acest puzzle poate fi rezolvat cu %1 blocuri."},c.ouchExclamation=function(){return"Aoleu!"},c.playSoundCrunch=function(){return"redă sunet zdrobit"},c.playSoundGoal1=function(){return"redă sunet obiectiv 1"},c.playSoundGoal2=function(){return"redă sunet obiectiv 2"},c.playSoundHit=function(){return"redă sunet lovit"},c.playSoundLosePoint=function(){return"redă sunet punct pierdut"},c.playSoundLosePoint2=function(){return"redă sunet punct pierdut 2"},c.playSoundRetro=function(){return"redă sunet retro"},c.playSoundRubber=function(){return"redă sunet radieră"},c.playSoundSlap=function(){return"redă sunet pălmuire"},c.playSoundTooltip=function(){return"Redă sunetul ales."},c.playSoundWinPoint=function(){return"redă sunet punct câștigat"},c.playSoundWinPoint2=function(){return"redă sunet punct câștigat 2"},c.playSoundWood=function(){return"redă sunet lemn"},c.positionOutTopLeft=function(){return"în poziţia de sus din stânga"},c.positionOutTopRight=function(){return"în poziţia de sus din dreapta"},c.positionTopOutLeft=function(){return"în poziţia din stânga sus de afară"},c.positionTopLeft=function(){return"stânga sus"},c.positionTopCenter=function(){return"centru sus"},c.positionTopRight=function(){return"dreapta sus"},c.positionTopOutRight=function(){return"în poziţia din dreapta sus de afară"},c.positionMiddleLeft=function(){return"mijloc stânga"},c.positionMiddleCenter=function(){return"mijloc centru"},c.positionMiddleRight=function(){return"mijloc dreapta"},c.positionBottomOutLeft=function(){return"în poziţia din stânga jos de afară"},c.positionBottomLeft=function(){return"stânga jos"},c.positionBottomCenter=function(){return"mijloc jos"},c.positionBottomRight=function(){return"dreapta jos"},c.positionBottomOutRight=function(){return"în poziţia din dreapta jos de afară"},c.positionOutBottomLeft=function(){return"în poziţia din stânga jos dedesubt"},c.positionOutBottomRight=function(){return"în poziţia din dreapta jos dedesubt"},c.positionRandom=function(){return"aleatoriu"},c.projectileBlueFireball=function(){return"minge de foc albastră"},c.projectilePurpleFireball=function(){return"minge de foc mov"},c.projectileRedFireball=function(){return"minge de foc roşie"},c.projectileYellowHearts=function(){return"inimi galbene"},c.projectilePurpleHearts=function(){return"inimi mov"},c.projectileRedHearts=function(){return"inimi roşii"},c.projectileRandom=function(){return"aleator"},c.reinfFeedbackMsg=function(){return'Poţi apăsa butonul "Încearcă din nou" pentru a reveni la povestea ta.'},c.repeatForever=function(){return"repetă pentru totdeauna"},c.repeatDo=function(){return"execută"},c.repeatForeverTooltip=function(){return"Execută acțiunile din acest bloc în mod repetat în timp ce povestea se desfăşoară."},c.saySprite=function(){return"spune"},c.saySpriteN=function(a){return"actorul "+v(a,"spriteIndex")+" zii"},c.saySpriteTooltip=function(){return"Apare un balon cu textul asociat din partea actorului specificat."},c.scoreText=function(a){return"Scor: "+v(a,"playerScore")},c.setBackground=function(){return"seteaza fundalul"},c.setBackgroundRandom=function(){return"setează fundal aleatoriu"},c.setBackgroundBlack=function(){return"setează fundal negru"},c.setBackgroundCave=function(){return"setează fundal peșteră"},c.setBackgroundCloudy=function(){return"setează fundal tulbure"},c.setBackgroundHardcourt=function(){return"setează fundal suprafață dură"},c.setBackgroundNight=function(){return"setrează fundal noapte"},c.setBackgroundUnderwater=function(){return"setează fundal subacvatic"},c.setBackgroundCity=function(){return"setează oraşul ca fundal"},c.setBackgroundDesert=function(){return"setează deşertul ca fundal"},c.setBackgroundRainbow=function(){return"setează curcubeul ca fundal"},c.setBackgroundSoccer=function(){return"setează terenul de fotbal ca fundal"},c.setBackgroundSpace=function(){return"setează spaţiul ca fundal"},c.setBackgroundTennis=function(){return"setează terenul de tenis ca fundal"},c.setBackgroundWinter=function(){return"setează peisaj de iarnă ca fundal"},c.setBackgroundTooltip=function(){return"Setează imaginea de fundal"},c.setScoreText=function(){return"Setează scor"},c.setScoreTextTooltip=function(){return"Setează textul ca să fie afișat în zona scorului."},c.setSpriteEmotionAngry=function(){return"la o stare de spirit furioasă"},c.setSpriteEmotionHappy=function(){return"la o stare de spirit fericită"},c.setSpriteEmotionNormal=function(){return"la o stare normală"},c.setSpriteEmotionRandom=function(){return"la o stare de spirit aleatoare"},c.setSpriteEmotionSad=function(){return"la o stare de spirit tristă"},c.setSpriteEmotionTooltip=function(){return"Setează starea de spirit de actor"},c.setSpriteAlien=function(){return"pentru o imagine extraterextră"},c.setSpriteBat=function(){return"o imagine cu liliac"},c.setSpriteBird=function(){return"o imagine cu pasăre"},c.setSpriteCat=function(){return"o imagine cu pisica"},c.setSpriteCaveBoy=function(){return"într-o poză cu un băiat din peşteră"},c.setSpriteCaveGirl=function(){return"într-o poză cu o fată din peşteră"},c.setSpriteDinosaur=function(){return"o imagine de dinozaur"},c.setSpriteDog=function(){return"o imagine de câine"},c.setSpriteDragon=function(){return"o imagine de dragon"},c.setSpriteGhost=function(){return"o imagine fantomă"},c.setSpriteHidden=function(){return"o imagine ascunsă"},c.setSpriteHideK1=function(){return"ascunde"},c.setSpriteKnight=function(){return"o imagine de cavaler"},c.setSpriteMonster=function(){return"o imagine de monstru"},c.setSpriteNinja=function(){return"într-o poză cu un ninja mascat"},c.setSpriteOctopus=function(){return"într-o poză cu o caracatiţă"},c.setSpritePenguin=function(){return"într-o poză cu un penguin"},c.setSpritePirate=function(){return"într-o poză cu un pirat"},c.setSpritePrincess=function(){return"într-o poză cu o prinţesă"},c.setSpriteRandom=function(){return"imagine aleatorie"},c.setSpriteRobot=function(){return"într-o poză cu un robot"},c.setSpriteShowK1=function(){return"arată"},c.setSpriteSpacebot=function(){return"într-o poză cu un robot spaţial"},c.setSpriteSoccerGirl=function(){return"într-o poză cu o fotbalistă"},c.setSpriteSoccerBoy=function(){return"într-o poză cu un fotbalist"},c.setSpriteSquirrel=function(){return"într-o poză cu o veveriţă"},c.setSpriteTennisGirl=function(){return"într-o poză cu o jucătoare de tenis"},c.setSpriteTennisBoy=function(){return"într-o poză cu un jucător de tenis"},c.setSpriteUnicorn=function(){return"într-o poză cu un inorog"},c.setSpriteWitch=function(){return"imagine de vrăjitoare"},c.setSpriteWizard=function(){return"într-o poză cu un vrăjitor"},c.setSpritePositionTooltip=function(){return"Instantaneu mută un actor la locația specificată."},c.setSpriteK1Tooltip=function(){return"Arată sau ascunde actorul specificat."},c.setSpriteTooltip=function(){return"Setează imaginea actorului"},c.setSpriteSizeRandom=function(){return"într-o mărime aleatoare"},c.setSpriteSizeVerySmall=function(){return"într-o dimensiune foarte mică"},c.setSpriteSizeSmall=function(){return"într-o dimensiune mică"},c.setSpriteSizeNormal=function(){return"într-o dimensiune normală"},c.setSpriteSizeLarge=function(){return"într-o dimensiune mare"},c.setSpriteSizeVeryLarge=function(){return"într-o dimensiune foarte mare"},c.setSpriteSizeTooltip=function(){return"Setează mărimea unui actor"},c.setSpriteSpeedRandom=function(){return"viteză aleatorie"},c.setSpriteSpeedVerySlow=function(){return"viteză foarte lentă"},c.setSpriteSpeedSlow=function(){return"viteză lentă"},c.setSpriteSpeedNormal=function(){return"viteză normală"},c.setSpriteSpeedFast=function(){return"viteză rapidă"},c.setSpriteSpeedVeryFast=function(){return"viteză foarte rapidă"},c.setSpriteSpeedTooltip=function(){return"Setează viteza unui actor"},c.setSpriteZombie=function(){return"într-o poză cu un zombi"},c.shareStudioTwitter=function(){return"Uite ce poveste am inventat. Am scris-o cu @codeorg"},c.shareGame=function(){return"Împărtăşeşte povestea ta:"},c.showTitleScreen=function(){return"arată ecranul titlu"},c.showTitleScreenTitle=function(){return"titlu"},c.showTitleScreenText=function(){return"scris"},c.showTSDefTitle=function(){return"scrie titlul aici"},c.showTSDefText=function(){return"scrie aici"},c.showTitleScreenTooltip=function(){return"Arată un ecran titlu cu titlul şi textul asociate."},c.setSprite=function(){return"setează"},c.setSpriteN=function(a){return"setează actorul "+v(a,"spriteIndex")},c.soundCrunch=function(){return"criză"},c.soundGoal1=function(){return"obiectivul 1"},c.soundGoal2=function(){return"obiectivul 2"},c.soundHit=function(){return"lovitură"},c.soundLosePoint=function(){return"pierde punctul"},c.soundLosePoint2=function(){return"pierde punctul 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"cauciuc"},c.soundSlap=function(){return"pălmuieşte"},c.soundWinPoint=function(){return"câştigă punctul"},c.soundWinPoint2=function(){return"câştigă punctul 2"},c.soundWood=function(){return"lemn"},c.speed=function(){return"viteză"},c.stopSprite=function(){return"opreşte"},c.stopSpriteN=function(a){return"opreşte actorul "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Opreşte mişcarea unui actor."},c.throwSprite=function(){return"aruncă"},c.throwSpriteN=function(a){return"aruncarea actorului "+v(a,"spriteIndex")},c.throwTooltip=function(){return"Aruncă un proiectil de la actorul specificat."},c.vanish=function(){return"şterge"},c.vanishActorN=function(a){return"şterge actorul "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Şterge actorul."},c.waitFor=function(){return"aşteaptă să"},c.waitSeconds=function(){return"secunde"},c.waitForClick=function(){return"aşteaptă clic"},c.waitForRandom=function(){return"aşteaptă aleatoriu"},c.waitForHalfSecond=function(){return"aşteaptă o jumătate de secundă"},c.waitFor1Second=function(){return"aşteaptă 1 secundă"},c.waitFor2Seconds=function(){return"aşteaptă 2 secunde"},c.waitFor5Seconds=function(){return"aşteaptă 5 secunde"},c.waitFor10Seconds=function(){return"aşteaptă 10 secunde"},c.waitParamsTooltip=function(){return"Aşteaptă un număr anumit de secunde sau foloseşte zero pentru a aştepta până la un clic."},c.waitTooltip=function(){return"Aşteaptă o anumită perioadă de timp sau până când se produce un clic."},c.whenArrowDown=function(){return"săgeată în jos"},c.whenArrowLeft=function(){return"săgeată la stânga"},c.whenArrowRight=function(){return"săgeată dreapta"},c.whenArrowUp=function(){return"săgeată în sus"},c.whenArrowTooltip=function(){return"Executa acţiuniile de mai jos atunci când tasta săgeată specificat este apăsată."},c.whenDown=function(){return"când tasta săgeată în jos"},c.whenDownTooltip=function(){return"Execută acțiunile de mai jos atunci când tasta săgeată în jos este apăsată."},c.whenGameStarts=function(){return"când începe povestea"},c.whenGameStartsTooltip=function(){return"Execută acţiunile de mai jos atunci când povestea începe."},c.whenLeft=function(){return"când tasta săgeată la stânga"},c.whenLeftTooltip=function(){return"Execută acțiunile de mai jos atunci când tasta săgeată la stânga este apăsată."},c.whenRight=function(){return"când tasta săgeată la dreapta"},c.whenRightTooltip=function(){return"Execută acțiunile de mai jos atunci când tasta săgeată la dreapta este apăsată."},c.whenSpriteClicked=function(){return"când actorul este atins"},c.whenSpriteClickedN=function(a){return"Când faceţi clic pe actorul "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Execută acţiunile de mai jos atunci când un actor este apăsat."},c.whenSpriteCollidedN=function(a){return"cand actorul "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execută acţiunile de mai jos atunci când un actor atinge un alt actor."},c.whenSpriteCollidedWith=function(){return"atinge"},c.whenSpriteCollidedWithN=function(a){return"atinge actorul "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"atinge mingea de foc albastră"},c.whenSpriteCollidedWithPurpleFireball=function(){return"atinge mingea de foc mov"},c.whenSpriteCollidedWithRedFireball=function(){return"atinge mingea de foc roşie"},c.whenSpriteCollidedWithYellowHearts=function(){return"atinge inimile galbene"},c.whenSpriteCollidedWithPurpleHearts=function(){return"atinge inimile mov"},c.whenSpriteCollidedWithRedHearts=function(){return"atinge inimile roşii"},c.whenSpriteCollidedWithBottomEdge=function(){return"atinge marginea de jos"},c.whenSpriteCollidedWithLeftEdge=function(){return"atinge marginea stânga"},c.whenSpriteCollidedWithRightEdge=function(){return"atinge marginea dreapta"},c.whenSpriteCollidedWithTopEdge=function(){return"atinge marginea de sus"},c.whenUp=function(){return"atunci când săgeată în sus"},c.whenUpTooltip=function(){return"Execută acțiunile de mai jos atunci când tasta săgeată în sus este apăsată."},c.yes=function(){return"Da"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ru_ru/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ru_ru/common":40,"../../locale/ru_ru/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ru_ru/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ru_ru/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ru_ru/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ru_ru/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ru_ru/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ru_ru/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ru=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.and=function(){return"и"},c.blocklyMessage=function(){return"Блокли"},c.catActions=function(){return"Действия"},c.catColour=function(){return"Цвет"},c.catLogic=function(){return"Логика"},c.catLists=function(){return"Списки"},c.catLoops=function(){return"Циклы"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Процедуры"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Переменные"},c.codeTooltip=function(){return"Просмотреть созданный код JavaScript."},c.continue=function(){return"Продолжить"},c.dialogCancel=function(){return"Отменить"},c.dialogOK=function(){return"Продолжить"},c.directionNorthLetter=function(){return"С"},c.directionSouthLetter=function(){return"Ю"},c.directionEastLetter=function(){return"В"},c.directionWestLetter=function(){return"З"},c.end=function(){return"конец"},c.emptyBlocksErrorMsg=function(){return'Блокам "повторять" или "если" необходимо иметь внутри другие блоки для работы. Убедись в том, что внутренний блок должным образом подходит к блоку, в котором он содержится.'},c.emptyFunctionBlocksErrorMsg=function(){return"Блок функции требует другие блоки внутри для работы."},c.extraTopBlocks=function(){return"У тебя есть оставшиеся блоки, которые не присоединены к основному блоку."},c.finalStage=function(){return"Поздравляю! Ты завершил последний этап."},c.finalStageTrophies=function(a){return"Поздравляю! Ты завершил последний этап и выиграл "+p(a,"numTrophies",0,"ru",{one:"кубок",other:n(a,"numTrophies")+" кубков"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Даже в лучших университетах изучают блочное программирование (например, "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Но на самом деле блоки, которые вы собирали могут быть отображены на JavaScript, наиболее широко используемом в мире языке программирования:"},c.hashError=function(){return"К сожалению, «%1» не соответствует какой-либо сохранённой программе."},c.help=function(){return"Справка"},c.hintTitle=function(){return"Подсказка:"},c.jump=function(){return"прыжок"},c.levelIncompleteError=function(){return"Ты используешь все необходимые виды блоков, но неправильным способом."},c.listVariable=function(){return"список"},c.makeYourOwnFlappy=function(){return"Создай свою Flappy Bird"},c.missingBlocksErrorMsg=function(){return"Для решения этой головоломки попробуй один или несколько из следующих блоков:"},c.nextLevel=function(a){return"Поздравляю! Головоломка "+v(a,"puzzleNumber")+" решена."},c.nextLevelTrophies=function(a){return"Поздравляю! Ты завершил головоломку "+v(a,"puzzleNumber")+" и выиграл "+p(a,"numTrophies",0,"ru",{one:"кубок",other:n(a,"numTrophies")+" кубков"})+"." },c.nextStage=function(a){return"Поздравляем! Ты закончил "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Поздравляю! Ты завершил этап "+v(a,"stageName")+" и выиграл "+p(a,"numTrophies",0,"ru",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Поздравляю! Ты завершил головоломку "+v(a,"puzzleNumber")+". (Однако, можно было обойтись всего "+p(a,"numBlocks",0,"ru",{one:"1 блоком",other:n(a,"numBlocks")+" блоками"})+".)"},c.numLinesOfCodeWritten=function(a){return"Ты только что написал "+p(a,"numLines",0,"ru",{one:"1 строку",other:n(a,"numLines")+" строки"})+" кода!"},c.play=function(){return"играть"},c.puzzleTitle=function(a){return"Головоломка "+v(a,"puzzle_number")+" из "+v(a,"stage_total")},c.repeat=function(){return"повторить"},c.resetProgram=function(){return"Сбросить"},c.runProgram=function(){return"Запустить"},c.runTooltip=function(){return"Запускает программу, заданную блоками в рабочей области."},c.score=function(){return"оценка"},c.showCodeHeader=function(){return"Показать код"},c.showGeneratedCode=function(){return"Показать код"},c.subtitle=function(){return"среда визуального программирования"},c.textVariable=function(){return"текст"},c.tooFewBlocksMsg=function(){return"Ты используешь все необходимые виды блоков, но попробуй использовать большее число блоков, чтобы завершить головоломку."},c.tooManyBlocksMsg=function(){return"Эта головоломка может быть решена блоками ."},c.tooMuchWork=function(){return"Ты заставил меня попотеть! Может, будешь стараться делать меньше попыток?"},c.toolboxHeader=function(){return"Блоки"},c.openWorkspace=function(){return"Как это работает"},c.totalNumLinesOfCodeWritten=function(a){return"Общее количество: "+p(a,"numLines",0,"ru",{one:"1 строка",other:n(a,"numLines")+" строки"})+" кода."},c.tryAgain=function(){return"Попытаться ещё раз"},c.hintRequest=function(){return"Показать подсказку"},c.backToPreviousLevel=function(){return"Вернуться на предыдущий уровень"},c.saveToGallery=function(){return"Сохранить в твоей галереи"},c.savedToGallery=function(){return"Сохранено в твоей галереи!"},c.typeCode=function(){return"Введите ваш код на JavaScript под этой инструкцией."},c.typeFuncs=function(){return"Доступные процедуры:%1"},c.typeHint=function(){return"Обратите внимание на то, что требуются круглые скобки и точки с запятой."},c.workspaceHeader=function(){return"Место сбора блоков: "},c.infinity=function(){return"Бесконечность"},c.rotateText=function(){return"Поверните ваше устройство."},c.orientationLock=function(){return"Выключите блокировку ориентации в настройках устройства."},c.wantToLearn=function(){return"Хотите научиться писать код?"},c.watchVideo=function(){return"Посмотреть видео"},c.when=function(){return"когда"},c.whenRun=function(){return"При запуске"},c.tryHOC=function(){return"Попробуйте Час кода"},c.signup=function(){return"Зарегистрируйтесь на вводный курс"},c.hintHeader=function(){return"Подсказка:"},c.genericFeedback=function(){return"Посмотреть как закончить и попытаться исправить свою программу."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ru=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"актер"},c.catActions=function(){return"Действия"},c.catControl=function(){return"Циклы"},c.catEvents=function(){return"События"},c.catLogic=function(){return"Логика"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функции"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Переменные"},c.changeScoreTooltip=function(){return"Добавить или отнять очко."},c.changeScoreTooltipK1=function(){return"Добавить очко."},c.continue=function(){return"Продолжить"},c.decrementPlayerScore=function(){return"удалить точку"},c.defaultSayText=function(){return"Введите здесь"},c.emotion=function(){return"настроение"},c.finalLevel=function(){return"Поздравляю! Последняя головоломка решена."},c.hello=function(){return"привет"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"оценка точки"},c.makeProjectileDisappear=function(){return"исчезнуть"},c.makeProjectileBounce=function(){return"отскочить"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Заставить столкнувшийся снаряд исчезнуть или отскочить."},c.makeYourOwn=function(){return"Создай свой собственный рассказ"},c.moveDirectionDown=function(){return"вниз"},c.moveDirectionLeft=function(){return"слева"},c.moveDirectionRight=function(){return"справа"},c.moveDirectionUp=function(){return"наверх"},c.moveDirectionRandom=function(){return"случайный"},c.moveDistance25=function(){return"25 пикселей"},c.moveDistance50=function(){return"50 пикселей"},c.moveDistance100=function(){return"100 пикселей"},c.moveDistance200=function(){return"200 пикселей"},c.moveDistance400=function(){return"400 пикселей"},c.moveDistancePixels=function(){return"пикселей"},c.moveDistanceRandom=function(){return"случайные пиксели"},c.moveDistanceTooltip=function(){return"Перемещение персонажа на определенное расстояние в определенном направлении."},c.moveSprite=function(){return"Перемещение"},c.moveSpriteN=function(a){return"Перемещение актера "+v(a,"spriteIndex")},c.moveDown=function(){return"Переместить вниз"},c.moveDownTooltip=function(){return"Перемещение актера вниз."},c.moveLeft=function(){return"переместить влево"},c.moveLeftTooltip=function(){return"Перемещение актера влево."},c.moveRight=function(){return"Переместить вправо"},c.moveRightTooltip=function(){return"Перемещение актера вправо."},c.moveUp=function(){return"переместить вверх"},c.moveUpTooltip=function(){return"Перемещение актера вверх."},c.moveTooltip=function(){return"Перемещение актера."},c.nextLevel=function(){return"Поздравляю! Головоломка решена."},c.no=function(){return"Нет"},c.numBlocksNeeded=function(){return"Головоломка может быть решена %1 блоком."},c.ouchExclamation=function(){return"Ой!"},c.playSoundCrunch=function(){return"проиграть звук хруста"},c.playSoundGoal1=function(){return"проиграть звук цели 1"},c.playSoundGoal2=function(){return"проиграть звук цели 2"},c.playSoundHit=function(){return"проиграть звук удара"},c.playSoundLosePoint=function(){return"проиграть звук потери очка"},c.playSoundLosePoint2=function(){return"проиграть звук потери очка 2"},c.playSoundRetro=function(){return"проиграть звук ретро"},c.playSoundRubber=function(){return"проиграть звук резины"},c.playSoundSlap=function(){return"проиграть звук шлепка"},c.playSoundTooltip=function(){return"Воспроизвести выбранный звук."},c.playSoundWinPoint=function(){return"проиграть звук получения очка"},c.playSoundWinPoint2=function(){return"проиграть звук получения очка 2"},c.playSoundWood=function(){return"проиграть звук дерева"},c.positionOutTopLeft=function(){return"на позицию сверху слева"},c.positionOutTopRight=function(){return"на позицию сверху справа"},c.positionTopOutLeft=function(){return"на позицию снаружи сверху слева"},c.positionTopLeft=function(){return"в верхней левой позиции"},c.positionTopCenter=function(){return"в центральной верхней позиции"},c.positionTopRight=function(){return"в правой верхней позиции"},c.positionTopOutRight=function(){return"на позицию снаружи сверху справа"},c.positionMiddleLeft=function(){return"в средней левой позиции"},c.positionMiddleCenter=function(){return"на позицию в центре"},c.positionMiddleRight=function(){return"на позицию посередине справа"},c.positionBottomOutLeft=function(){return"на позицию снизу снаружи слева"},c.positionBottomLeft=function(){return"в нижнюю левую позицию"},c.positionBottomCenter=function(){return"на позицию снизу по центру"},c.positionBottomRight=function(){return"на позицию снизу справа"},c.positionBottomOutRight=function(){return"на позицию снизу снаружи справа"},c.positionOutBottomLeft=function(){return"на позицию снизу слева"},c.positionOutBottomRight=function(){return"на позицию снизу справа"},c.positionRandom=function(){return"в случайную позицию"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"случайный"},c.reinfFeedbackMsg=function(){return"Вы можете нажать кнопку «Повторить», чтобы вернуться в игру."},c.repeatForever=function(){return"повторять снова и снова"},c.repeatDo=function(){return"выполнить"},c.repeatForeverTooltip=function(){return"Выполнять действия в этом блоке неоднократно пока происходит действие."},c.saySprite=function(){return"произнести"},c.saySpriteN=function(a){return"актер "+v(a,"spriteIndex")+" говорит"},c.saySpriteTooltip=function(){return"Показать речевой пузырь с указанным текстом у указанного персонажа."},c.scoreText=function(a){return"Оценка: "+v(a,"playerScore")},c.setBackground=function(){return"задать фон"},c.setBackgroundRandom=function(){return"установите случайный фон"},c.setBackgroundBlack=function(){return"установите чёрный фон"},c.setBackgroundCave=function(){return"задать фон пещеры"},c.setBackgroundCloudy=function(){return"установите фон из облаков"},c.setBackgroundHardcourt=function(){return"установите фон с твёрдым покрытием"},c.setBackgroundNight=function(){return"установите ночной фон"},c.setBackgroundUnderwater=function(){return"установите подводный фон"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Установить на задний план изображение"},c.setScoreText=function(){return"задать счет"},c.setScoreTextTooltip=function(){return"задать текст, отображаемый в области оценки."},c.setSpriteEmotionAngry=function(){return"сердитое настроение"},c.setSpriteEmotionHappy=function(){return"хорошее настроение"},c.setSpriteEmotionNormal=function(){return"нормальное настроение"},c.setSpriteEmotionRandom=function(){return"случайное настроение"},c.setSpriteEmotionSad=function(){return"печальное настроение"},c.setSpriteEmotionTooltip=function(){return"задать настроение актера"},c.setSpriteAlien=function(){return"изображение чужого"},c.setSpriteBat=function(){return"изображение летучей мыши"},c.setSpriteBird=function(){return"изображение птицы"},c.setSpriteCat=function(){return"изображение кота"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"изображение динозавра"},c.setSpriteDog=function(){return"изображение собаки"},c.setSpriteDragon=function(){return"образ дракона"},c.setSpriteGhost=function(){return"образ призрака"},c.setSpriteHidden=function(){return"к скрытой картинке"},c.setSpriteHideK1=function(){return"скрыть"},c.setSpriteKnight=function(){return"образ рыцаря"},c.setSpriteMonster=function(){return"образ монстра"},c.setSpriteNinja=function(){return"образ замаскированного ниндзя"},c.setSpriteOctopus=function(){return"образ осьминога"},c.setSpritePenguin=function(){return"образ пингвина"},c.setSpritePirate=function(){return"образ пирата"},c.setSpritePrincess=function(){return"образ принцессы"},c.setSpriteRandom=function(){return"для случайной картинки"},c.setSpriteRobot=function(){return"образ робота"},c.setSpriteShowK1=function(){return"Показать"},c.setSpriteSpacebot=function(){return"образ робота"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"образ белки"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"образу единорога"},c.setSpriteWitch=function(){return"для картинки с ведьмой"},c.setSpriteWizard=function(){return"образ мастера"},c.setSpritePositionTooltip=function(){return"Мгновенно перемещает актёра в указанное место."},c.setSpriteK1Tooltip=function(){return"Показать или скрыть указанного актера"},c.setSpriteTooltip=function(){return"Установите картинку с актёром"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"для случайной скорости"},c.setSpriteSpeedVerySlow=function(){return"для очень медленной скорости"},c.setSpriteSpeedSlow=function(){return"для медленной скорости"},c.setSpriteSpeedNormal=function(){return"для нормальной скорости"},c.setSpriteSpeedFast=function(){return"для быстрой скорости"},c.setSpriteSpeedVeryFast=function(){return"для очень быстрой скорости"},c.setSpriteSpeedTooltip=function(){return"Установите скорость актёра"},c.setSpriteZombie=function(){return"образ зомби"},c.shareStudioTwitter=function(){return"Проверьте историю, которую я написал. Я написал её сам с @codeorg"},c.shareGame=function(){return"Поделиться своей историей:"},c.showTitleScreen=function(){return"показать титульный экран"},c.showTitleScreenTitle=function(){return"название"},c.showTitleScreenText=function(){return"текст"},c.showTSDefTitle=function(){return"введите название здесь"},c.showTSDefText=function(){return"введите текст здесь"},c.showTitleScreenTooltip=function(){return"Показать титульный экран с указанным названием и текстом."},c.setSprite=function(){return"установить"},c.setSpriteN=function(a){return"указать персонажа "+v(a,"spriteIndex")},c.soundCrunch=function(){return"хруст"},c.soundGoal1=function(){return"цель 1"},c.soundGoal2=function(){return"цель 2"},c.soundHit=function(){return"удар"},c.soundLosePoint=function(){return"потеря очка"},c.soundLosePoint2=function(){return"потеря очка 2"},c.soundRetro=function(){return"ретро"},c.soundRubber=function(){return"резина"},c.soundSlap=function(){return"шлепок"},c.soundWinPoint=function(){return"получение очка"},c.soundWinPoint2=function(){return"получение очка 2"},c.soundWood=function(){return"дерево"},c.speed=function(){return"скорость"},c.stopSprite=function(){return"остановка"},c.stopSpriteN=function(a){return"остановить персонажа "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Останавливает движение актера."},c.throwSprite=function(){return"кинуть"},c.throwSpriteN=function(a){return"персонаж "+v(a,"spriteIndex")+" кидает"},c.throwTooltip=function(){return"Кидает снаряд от указанного персонажа."},c.vanish=function(){return"исчезнуть"},c.vanishActorN=function(a){return"исчезнуть персонажу "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Заставляет персонажа исчезнуть."},c.waitFor=function(){return"ждать"},c.waitSeconds=function(){return"секунд"},c.waitForClick=function(){return"ожидать нажатия на мышку"},c.waitForRandom=function(){return"ждать случайное время"},c.waitForHalfSecond=function(){return"подождите полсекунды"},c.waitFor1Second=function(){return"подождите 1 секунду"},c.waitFor2Seconds=function(){return"подождите 2 секунды"},c.waitFor5Seconds=function(){return"подождите 5 секунд"},c.waitFor10Seconds=function(){return"подождите 10 секунд"},c.waitParamsTooltip=function(){return"Ждать указанное количество секунд или, если указан 0, до щелчка."},c.waitTooltip=function(){return"Подождите указанное количество времени или пока не произойдёт щелчок."},c.whenArrowDown=function(){return"клавиша вниз"},c.whenArrowLeft=function(){return"клавиша влево"},c.whenArrowRight=function(){return"клавиша вправо"},c.whenArrowUp=function(){return"клавиша вверх"},c.whenArrowTooltip=function(){return"Выполнить действия, указанные ниже, когда нажата указанная клавиша."},c.whenDown=function(){return"когда стрелка вниз"},c.whenDownTooltip=function(){return"Выполните действия ниже, когда когда будет нажата клавиша стрелка вниз."},c.whenGameStarts=function(){return"когда начнётся история"},c.whenGameStartsTooltip=function(){return"Выполните действия ниже, когда начнётся история."},c.whenLeft=function(){return"когда стрелка влево"},c.whenLeftTooltip=function(){return"Выполните действия ниже, когда нажата клавиша стрелка влево."},c.whenRight=function(){return"когда стрелка справа"},c.whenRightTooltip=function(){return"Выполните действия ниже, когда нажата клавиша стрелка вправо."},c.whenSpriteClicked=function(){return"когда актёр нажмёт на кнопку"},c.whenSpriteClickedN=function(a){return"когда на персонажа "+v(a,"spriteIndex")+" нажали"},c.whenSpriteClickedTooltip=function(){return"Выполните действия ниже, когда актёр нажмёт на кнопку."},c.whenSpriteCollidedN=function(a){return"когда персонаж "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Выполнить действия, указанные ниже, когда персонаж сталкивается с другим персонажем."},c.whenSpriteCollidedWith=function(){return"касается"},c.whenSpriteCollidedWithN=function(a){return"касается персонажа "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"касается нижней границы"},c.whenSpriteCollidedWithLeftEdge=function(){return"касается левой границы"},c.whenSpriteCollidedWithRightEdge=function(){return"касается правой границы"},c.whenSpriteCollidedWithTopEdge=function(){return"касается верхней границы"},c.whenUp=function(){return"когда стрелка вверх"},c.whenUpTooltip=function(){return"Выпонить действия, указанные ниже, когда нажата клавиша вверх."},c.yes=function(){return"Да"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/sk_sk/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/sk_sk/common":40,"../../locale/sk_sk/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/sk_sk/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/sk_sk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/sk_sk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/sk_sk/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sk_sk/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sk_sk/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.sk=function(a){return 1==a?"one":2==a||3==a||4==a?"few":"other"},c.and=function(){return"a"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Akcie"},c.catColour=function(){return"Farba"},c.catLogic=function(){return"Logické"},c.catLists=function(){return"Zoznamy"},c.catLoops=function(){return"Slučky"},c.catMath=function(){return"Matematické"},c.catProcedures=function(){return"Funkcie"},c.catText=function(){return"Text"},c.catVariables=function(){return"Premenné"},c.codeTooltip=function(){return"Pozrieť generovaný kód JavaScript."},c.continue=function(){return"Pokračovať"},c.dialogCancel=function(){return"Zrušiť"},c.dialogOK=function(){return"ok"},c.directionNorthLetter=function(){return"S"},c.directionSouthLetter=function(){return"J"},c.directionEastLetter=function(){return"V"},c.directionWestLetter=function(){return"Z"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"Repeat", alebo "If" bloky musia obsahovať ďalšie bloky vo vnútri aby pracovali. Uistite sa, že vnútorný blok sedí správne vo vnútri týchto blokov.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Máte ďalšie extra bloky, ktoré nie sú pripojené k blokom udalostí."},c.finalStage=function(){return"Gratulujem! Dokončili ste poslednú úroveň."},c.finalStageTrophies=function(a){return"Gratulujem! Dokončili ste poslednú úroveň a vyhrali "+p(a,"numTrophies",0,"sk",{one:"trofej",other:n(a,"numTrophies")+" trofejí"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"Bloky pre Váš program môžu byť tiež vyjadrené v JavaScript-e, svetovo najviac rozšírenom programovacom jazyku:"},c.hashError=function(){return"Prepáčte, '%1' nezodpovedá žiadnemu uloženému programu."},c.help=function(){return"pomoc"},c.hintTitle=function(){return"Tip:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Používate všetky potrebné typy blokov, ale nie tým správnym spôsobom."},c.listVariable=function(){return"zoznam"},c.makeYourOwnFlappy=function(){return'Vytvor si svoju vlastnú "Flappy" hru'},c.missingBlocksErrorMsg=function(){return"Skúste použiť jeden alebo viac blokov nižšie pre vyriešenie tejto úlohy."},c.nextLevel=function(a){return"Gratulujem! Dokončili ste úlohu "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Gratulujem! Dokončili ste úlohu "+v(a,"puzzleNumber")+" a vyhrali "+p(a,"numTrophies",0,"sk",{one:"trofej",other:n(a,"numTrophies")+" trofejí"})+"."},c.nextStage=function(a){return"Gratulujem! Dokončili ste úroveň "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Gratulujem! Dokončili ste úroveň "+v(a,"stageNumber")+" a vyhrali "+p(a,"numTrophies",0,"sk",{one:"trofej",other:n(a,"numTrophies")+" trofejí"})+"." },c.numBlocksNeeded=function(a){return"Gratulujem! Dokončili ste úlohu "+v(a,"puzzleNumber")+". (Avšak, mohli ste použiť iba "+p(a,"numBlocks",0,"sk",{one:"1 blok",other:n(a,"numBlocks")+" blokov"})+".)"},c.numLinesOfCodeWritten=function(a){return"Práve ste napísali "+p(a,"numLines",0,"sk",{one:"1 riadok",other:n(a,"numLines")+" riadkov"})+" kódu!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Úloha "+v(a,"puzzle_number")+" z "+v(a,"stage_total")},c.repeat=function(){return"opakovať"},c.resetProgram=function(){return"Obnoviť"},c.runProgram=function(){return"Spustiť program"},c.runTooltip=function(){return"Spustiť program definovaný blokmi v pracovnom priestore."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Zobraziť kód"},c.showGeneratedCode=function(){return"Zobraziť kód"},c.subtitle=function(){return"vizuálne programovacie prostredie"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Používate všetky potrebné typy blokov, ale pokúste sa použiť viac týchto typov na dokončenie tejto úlohy."},c.tooManyBlocksMsg=function(){return"Táto úloha môže byť vyriešená s blokmi."},c.tooMuchWork=function(){return"Spravil si mi veľa práce! Mohol by si skúsiť opakovať menej krát?"},c.toolboxHeader=function(){return"Bloky"},c.openWorkspace=function(){return"Ako to funguje"},c.totalNumLinesOfCodeWritten=function(a){return"Celkovo: "+p(a,"numLines",0,"sk",{one:"1 riadok",other:n(a,"numLines")+" riadkov"})+" kódu."},c.tryAgain=function(){return"skús znova"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Späť na predchádzajúcu úlohu"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Napíšte Váš JavaScript kód pod tieto pokyny."},c.typeFuncs=function(){return"Dostupné funkcie:%1"},c.typeHint=function(){return"Všimnite si, že sú potrebné zátvorky a bodkočiarky."},c.workspaceHeader=function(){return"Zostavte Vaše bloky sem: "},c.infinity=function(){return"Nekonečno"},c.rotateText=function(){return"Otočte Váš prístroj."},c.orientationLock=function(){return"Vypnite zámok orientácie v nastaveniach vášho prístroja."},c.wantToLearn=function(){return"Chcete sa naučiť programovať?"},c.watchVideo=function(){return"Pozrieť video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Vyskúšajte hodinu kódovania"},c.signup=function(){return"Prihlásiť sa na úvodný kurz"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.sk=function(a){return 1==a?"one":2==a||3==a||4==a?"few":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Akcie"},c.catControl=function(){return"Slučky"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logické"},c.catMath=function(){return"Matematické"},c.catProcedures=function(){return"Funkcie"},c.catText=function(){return"Text"},c.catVariables=function(){return"Premenné"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Pokračovať"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Gratulujem! Vyriešili ste posledné puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"náhodne"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixelov"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"posunúť nadol"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"posunúť doľava"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"posunúť doprava"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"posunúť nahor"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Gratulujem! Vyriešili ste puzzle."},c.no=function(){return"Nie"},c.numBlocksNeeded=function(){return"Toto puzzle môže byť vyriešená s %1 blokmi."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"náhodne"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"vykonaj"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"nastaviť skóre"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"nastaviť"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"keď začne hra"},c.whenGameStartsTooltip=function(){return"Vykonať akcie, keď začne hra."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Áno"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/sl_si/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/sl_si/common":40,"../../locale/sl_si/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/sl_si/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/sl_si/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/sl_si/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/sl_si/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sl_si/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sl_si/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.sl=function(a){return a%100==1?"one":a%100==2?"two":a%100==3||a%100==4?"few":"other"},c.and=function(){return"in"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Dejanja"},c.catColour=function(){return"Barva"},c.catLogic=function(){return"Logika"},c.catLists=function(){return"Seznami"},c.catLoops=function(){return"Zanke"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkcije"},c.catText=function(){return"Besedilo"},c.catVariables=function(){return"Spremenljivke"},c.codeTooltip=function(){return"Poglej generirane kode JavaScript."},c.continue=function(){return"Nadaljuj"},c.dialogCancel=function(){return"Prekliči"},c.dialogOK=function(){return"Vredu"},c.directionNorthLetter=function(){return"S"},c.directionSouthLetter=function(){return"J"},c.directionEastLetter=function(){return"V"},c.directionWestLetter=function(){return"Z"},c.end=function(){return"konec"},c.emptyBlocksErrorMsg=function(){return"Znotraj 'Ponovi' ali 'če' bloka morajo biti drugi bloki, da bo delovalo. Prepričaj se, da se notranji bloki ustrezno prilegajo zunanjemu bloku."},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"Imate dodatne bloke, ki niso povezani z blokom dogodka."},c.finalStage=function(){return"Čestitke! Zaključil si zadnjo stopnjo."},c.finalStageTrophies=function(a){return"Čestitke! Zaključil/a si stopnjo "+v(a,"stageNumber")+" in osvojil/a "+p(a,"numTrophies",0,"sl",{one:"trofejo",other:n(a,"numTrophies")+" trofej"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Celo najboljše univerze učijo kodiranje z bloki (npr. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ampak bloke, ki si jih sestavil, lahko prikažemo v JavaScriptu, najbolj rabljenem programskem jeziku:"},c.hashError=function(){return"Oprosti, '%1' ne ustreza nobenemu shranjenemu programu."},c.help=function(){return"Pomoč"},c.hintTitle=function(){return"Namig:"},c.jump=function(){return"skoči"},c.levelIncompleteError=function(){return"Uporabljaš vse potrebne tipe blokov, a ne na pravi način."},c.listVariable=function(){return"seznam"},c.makeYourOwnFlappy=function(){return"Izdelaj svojo lastno Flappy igro"},c.missingBlocksErrorMsg=function(){return"Poskusi enega ali več blokov spodaj, da rešiš uganko."},c.nextLevel=function(a){return"Čestitke! Rešil si uganko "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Čestitke! Zaključil/a si stopnjo "+v(a,"stageNumber")+" in osvojil/a "+p(a,"numTrophies",0,"sl",{one:"trofejo",other:n(a,"numTrophies")+" trofej"})+"."},c.nextStage=function(a){return"Čestitke! Opravili ste "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Čestitke! Zaključil/a si stopnjo "+v(a,"stageNumber")+" in osvojil/a "+p(a,"numTrophies",0,"sl",{one:"trofejo",other:n(a,"numTrophies")+" trofej"})+"." },c.numBlocksNeeded=function(a){return"Čestitke! Zaključil/a si uganko "+v(a,"puzzleNumber")+". (Vendar bi lahko uporabil samo "+p(a,"numBlocks",0,"sl",{one:"1 blok",other:n(a,"numBlocks")+" blokov"})+".)"},c.numLinesOfCodeWritten=function(a){return"Ravnokar si napisal "+p(a,"numLines",0,"sl",{one:"1 vrstica",other:n(a,"numLines")+" vrstic"})+" kode!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Uganka "+v(a,"puzzle_number")+" od "+v(a,"stage_total")},c.repeat=function(){return"ponovi"},c.resetProgram=function(){return"resetiraj"},c.runProgram=function(){return"Teči"},c.runTooltip=function(){return"Zaženi program, definiran z bloki na delovni površini."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Pokaži kodo"},c.showGeneratedCode=function(){return"Pokaži kodo"},c.subtitle=function(){return"vizualno programersko okolje"},c.textVariable=function(){return"besedilo"},c.tooFewBlocksMsg=function(){return"Uporabljaš vse potrebne tipe blokov, a poskusi uporabiti več teh tipov blokov, da zaključiš to uganko."},c.tooManyBlocksMsg=function(){return"Ta uganka je lahko rešena z bloki."},c.tooMuchWork=function(){return"Zaradi tebe sem moral narediti veliko dela! Bi se lahko poskusil manjkrat ponavljati?"},c.toolboxHeader=function(){return"Bloki"},c.openWorkspace=function(){return"Kako deluje"},c.totalNumLinesOfCodeWritten=function(a){return"Seštevek vseh skupaj: "+p(a,"numLines",0,"sl",{one:"1 vrstica",other:n(a,"numLines")+" vrstic"})+" kode."},c.tryAgain=function(){return"Poskusi ponovno"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Nazaj na prejšnjo raven"},c.saveToGallery=function(){return"Shrani v svojo galerijo"},c.savedToGallery=function(){return"Shranjeno v tvoji galeriji!"},c.typeCode=function(){return"Vtipkaj tvojo JavaScript kodo pod temi navodili."},c.typeFuncs=function(){return"Razpoložljive funkcije: %1"},c.typeHint=function(){return"Zapomni si, oklepaji in podpičja so zahtevana."},c.workspaceHeader=function(){return"Tukaj sestavi tvoje bloke: "},c.infinity=function(){return"Neskončnost"},c.rotateText=function(){return"Zavrti tvojo napravo."},c.orientationLock=function(){return"Izključi zaklepanje orientacije v nastavitvah naprave."},c.wantToLearn=function(){return"Se želiš naučiti programirati?"},c.watchVideo=function(){return"Glej video"},c.when=function(){return"ko"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Poizkusi Uro za programiranje (Hour to Code)"},c.signup=function(){return"Vpiši se za uvodni tečaj"},c.hintHeader=function(){return"Tukaj je namig:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.sl=function(a){return a%100==1?"one":a%100==2?"two":a%100==3||a%100==4?"few":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Dejanja"},c.catControl=function(){return"Zanke"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logika"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funkcije"},c.catText=function(){return"Besedilo"},c.catVariables=function(){return"Spremenljivke"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Nadaljuj"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Čestitke! Rešil/a si zadnjo uganko."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"poljuben"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"piksli"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"premakni se dol"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"premakni se levo"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"premakni se desno"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"premakni se gor"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Čestitke! Zaključil/a si to uganko."},c.no=function(){return"Ne"},c.numBlocksNeeded=function(){return"Ta uganka je lahko rešena z %1 bloki."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"predvajaj zvok drobljenja"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"predvajaj zvok udarca"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"predvajaj retro zvok"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Predvajaj izbran zvok."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"poljuben"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"naredi"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Dosežek: "+v(a,"playerScore")+" (Uporabnikove točke)"},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Nastavite sliko ozadja"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"besedilo"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"določi"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"hrustati"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/sq_al/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/sq_al/common":40,"../../locale/sq_al/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/sq_al/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/sq_al/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/sq_al/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/sq_al/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sq_al/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sq_al/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.sq=function(a){return 1===a?"one":"other"},c.and=function(){return"dhe"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"aksionet"},c.catColour=function(){return"Colour"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Listat"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funksionet"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variablat"},c.codeTooltip=function(){return"Shikoni kodin e gjenerua JavaScript."},c.continue=function(){return"Vazhdo"},c.dialogCancel=function(){return"Anulo"},c.dialogOK=function(){return"Ne rregull"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Urime! Ju sapo perfunduat fazen finale "},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"sq",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Ndihm"},c.hintTitle=function(){return"Ndihmes:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Urime ju e perfunduat Puzzle-n "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"sq",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"sq",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"sq",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"sq",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"përsërit"},c.resetProgram=function(){return"Reset"},c.runProgram=function(){return"Run Program"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Shfaq Kodin"},c.showGeneratedCode=function(){return"Shfaq kodin"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Ndalesat"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"sq",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Provo perseri"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Kthehu ne nivelin e meparshem"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.sq=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"aksionet"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Matematika"},c.catProcedures=function(){return"Funksione"},c.catText=function(){return"Tekst"},c.catVariables=function(){return"Variablat"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Vazhdo"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Urime! Ju keni perfunduar enigmen perfundimatare."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"i rastësishëm"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"piksela"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Urime! Ju keni perfunduar kete enigme."},c.no=function(){return"Jo"},c.numBlocksNeeded=function(){return"Kjo enigme mund te zgjidhet me %1 rreshta."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"i rastësishëm"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"bej"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"vendos"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Po"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/sr_sp/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/sr_sp/common":40,"../../locale/sr_sp/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/sr_sp/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/sr_sp/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/sr_sp/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/sr_sp/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sr_sp/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sr_sp/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.sr=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.and=function(){return"и"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Акције"},c.catColour=function(){return"Боја"},c.catLogic=function(){return"Логика"},c.catLists=function(){return"Листе"},c.catLoops=function(){return"Понављања"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функције"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Променљиве"},c.codeTooltip=function(){return"Погледајте генерисани код JavaScript-а."},c.continue=function(){return"Настави"},c.dialogCancel=function(){return"Откажи"},c.dialogOK=function(){return"У реду"},c.directionNorthLetter=function(){return"Север"},c.directionSouthLetter=function(){return"Југ"},c.directionEastLetter=function(){return"Исток"},c.directionWestLetter=function(){return"Запад"},c.end=function(){return"крај"},c.emptyBlocksErrorMsg=function(){return'Да би блок "Понављај" или "Ако" радио, у њега треба уградити друге блокове. Постарајте се да је унутрашњи блок правилно убачен у спољни блок.'},c.emptyFunctionBlocksErrorMsg=function(){return"Тело функције треба да се састоји из блокова како би радило."},c.extraTopBlocks=function(){return"Имаш блокове који нису повезани са основним блоком."},c.finalStage=function(){return"Честитамо! Завршили сте последњу етапу."},c.finalStageTrophies=function(a){return"Честитамо! Завршио-ла си последњи ниво и освојио-ла "+p(a,"numTrophies",0,"sr",{one:"трофеј",other:n(a,"numTrophies")+" трофеја"})+"."},c.finish=function(){return"Заврши"},c.generatedCodeInfo=function(a){return"Чак и најбољи универзитети уче блок-базирано кодирање (нпр. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Али блокови су постављени тако да их можете видети у JavaScript, светском најкоришћенијем програмском језику:"},c.hashError=function(){return"Жао нам је, '%1' не одговара ни једном сачуваном програму."},c.help=function(){return"Помоћ"},c.hintTitle=function(){return"Савет:"},c.jump=function(){return"скок"},c.levelIncompleteError=function(){return"Користиш све неопходне типове блокова, али не на прави начин."},c.listVariable=function(){return"листа"},c.makeYourOwnFlappy=function(){return"Направи своју Flappy игру"},c.missingBlocksErrorMsg=function(){return"Пробај један или више понуђених блокова како би решио-ла мозгалицу."},c.nextLevel=function(a){return"Честитамо! Решио-ла си мозгалицу "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Честитамо! Решили сте Слагалицу "+v(a,"puzzleNumber")+" и освојили "+p(a,"numTrophies",0,"sr",{one:"трофеј",other:n(a,"numTrophies")+" трофеја"})+"."},c.nextStage=function(a){return"Честитамо! Завршили сте "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Честитамо! Завршили сте "+v(a,"stageName")+" и освојили "+p(a,"numTrophies",0,"sr",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Честитамо! Решио-ла си мозгалицу "+v(a,"puzzleNumber")+". (Међутим, постоји програм са само "+p(a,"numBlocks",0,"sr",{one:"једним блоком",other:n(a,"numBlocks")+" блокова"})+".)"},c.numLinesOfCodeWritten=function(a){return"Управо си написао-ла "+p(a,"numLines",0,"sr",{one:"1 линију",other:n(a,"numLines")+" линија"})+" кода!"},c.play=function(){return"играј"},c.puzzleTitle=function(a){return"Мозгалица "+v(a,"puzzle_number")+" од "+v(a,"stage_total")},c.repeat=function(){return"понови"},c.resetProgram=function(){return"Почни поново"},c.runProgram=function(){return"Изврши"},c.runTooltip=function(){return"Покрени програм састављен уз помоћ блокова у радном простору."},c.score=function(){return"Резултат"},c.showCodeHeader=function(){return"Покажи код програма"},c.showGeneratedCode=function(){return"Покажи код програма"},c.subtitle=function(){return"графичко окружење за програмирање"},c.textVariable=function(){return"текст"},c.tooFewBlocksMsg=function(){return"Користиш све неопходне типове блокова, али покушај да искористиш више ових блокова да завршиш мозгалицу."},c.tooManyBlocksMsg=function(){return"Ова мозгалица може да се реши са блокова."},c.tooMuchWork=function(){return"Задао си ми много посла! Покушај са мање понављања."},c.toolboxHeader=function(){return"Блокови"},c.openWorkspace=function(){return"Како то ради"},c.totalNumLinesOfCodeWritten=function(a){return"Укупно : "+p(a,"numLines",0,"sr",{one:"1 линија",other:n(a,"numLines")+" линија"})+" кода."},c.tryAgain=function(){return"Покушај поново"},c.hintRequest=function(){return"Види предлог"},c.backToPreviousLevel=function(){return"Натраг на претходни ниво"},c.saveToGallery=function(){return"Сачувај у своју галерију"},c.savedToGallery=function(){return"Сачувано у твојој галерији!"},c.typeCode=function(){return"Напиши свој JavaScript код испод ових инструкција."},c.typeFuncs=function(){return"Доступне функције:%1"},c.typeHint=function(){return"Уочи да су неопходне заграде и тачка-зарези."},c.workspaceHeader=function(){return"Склопи своје блокове овде: "},c.infinity=function(){return"Бесконачно"},c.rotateText=function(){return"Окрените ваш уређај."},c.orientationLock=function(){return"У подешавањима уређаја искључи блокаду оријентације."},c.wantToLearn=function(){return"Желиш да научиш да програмираш?"},c.watchVideo=function(){return"Погледај видео"},c.when=function(){return"када"},c.whenRun=function(){return"када се извршава"},c.tryHOC=function(){return'Испробај "Hour of Code"'},c.signup=function(){return"Региструј се за уводни курс"},c.hintHeader=function(){return"Ево предлога:"},c.genericFeedback=function(){return"Погледај како си завршио и пробај да поправиш свој програм."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.sr=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"учесник"},c.catActions=function(){return"Акције"},c.catControl=function(){return"Петље"},c.catEvents=function(){return"Догађаји"},c.catLogic=function(){return"Логика"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функције"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Променљиве"},c.changeScoreTooltip=function(){return"Додај или одузми поен резултату."},c.changeScoreTooltipK1=function(){return"Додај поен резултату."},c.continue=function(){return"Настави"},c.decrementPlayerScore=function(){return"одузми поен"},c.defaultSayText=function(){return"упиши овде"},c.emotion=function(){return"расположење"},c.finalLevel=function(){return"Честитамо! Решили сте последњи проблем."},c.hello=function(){return"здраво"},c.helloWorld=function(){return"Здраво Свете!"},c.incrementPlayerScore=function(){return"освоји поен"},c.makeProjectileDisappear=function(){return"нестани"},c.makeProjectileBounce=function(){return"одбиј се"},c.makeProjectileBlueFireball=function(){return"направи плаву ватрену лопту"},c.makeProjectilePurpleFireball=function(){return"направи љубичасту ватрену лопту"},c.makeProjectileRedFireball=function(){return"направи црвену ватрену лопту"},c.makeProjectileYellowHearts=function(){return"направи жута срца"},c.makeProjectilePurpleHearts=function(){return"направи љубичаста срца"},c.makeProjectileRedHearts=function(){return"направи црвена срца"},c.makeProjectileTooltip=function(){return"Учини да пројектил који се сударио нестане или се одбије."},c.makeYourOwn=function(){return"Направи своју причу"},c.moveDirectionDown=function(){return"доле"},c.moveDirectionLeft=function(){return"лево"},c.moveDirectionRight=function(){return"десно"},c.moveDirectionUp=function(){return"горе"},c.moveDirectionRandom=function(){return"случајно"},c.moveDistance25=function(){return"25 пиксела"},c.moveDistance50=function(){return"50 пиксела"},c.moveDistance100=function(){return"100 пиксела"},c.moveDistance200=function(){return"200 пиксела"},c.moveDistance400=function(){return"400 пиксела"},c.moveDistancePixels=function(){return"пиксели"},c.moveDistanceRandom=function(){return"случајни пиксели"},c.moveDistanceTooltip=function(){return"Помери учесника за одређено растојање у одређеном смеру."},c.moveSprite=function(){return"помери"},c.moveSpriteN=function(a){return"помери учесника "+v(a,"spriteIndex")},c.moveDown=function(){return"помери доле"},c.moveDownTooltip=function(){return"Помери учесника на доле."},c.moveLeft=function(){return"помери лево"},c.moveLeftTooltip=function(){return"Помери учесника у лево."},c.moveRight=function(){return"помери десно"},c.moveRightTooltip=function(){return"Помери учесника у десно."},c.moveUp=function(){return"помери се горе"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Честитке! Завршили сте пузлу."},c.no=function(){return"не"},c.numBlocksNeeded=function(){return"Ова слагалица се може решити са %1 блокова."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"одсвирај звук лома"},c.playSoundGoal1=function(){return"одсвирај звук циља 1"},c.playSoundGoal2=function(){return"одсвирај звук циља 2"},c.playSoundHit=function(){return"одсвирај звук ударца"},c.playSoundLosePoint=function(){return"одсвирај звук изгубљеног поена"},c.playSoundLosePoint2=function(){return"одсвирај звук изгубљеног поена 2"},c.playSoundRetro=function(){return"одсвирај старински звук"},c.playSoundRubber=function(){return"одсвирај звук гуме"},c.playSoundSlap=function(){return"одсвирај звук пљеска"},c.playSoundTooltip=function(){return"Одсвирај одабрани звук."},c.playSoundWinPoint=function(){return"одсвирај звук освојеног поена"},c.playSoundWinPoint2=function(){return"одсвирај звук освојеног поена 2"},c.playSoundWood=function(){return"одсвирај звук дрвета"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"насумичан"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"уради"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"учесник "+v(a,"spriteIndex")+" каже"},c.saySpriteTooltip=function(){return"Појави облачић с повезаним текстом од одређеног учесника."},c.scoreText=function(a){return"Резултат: "+v(a,"playerScore")},c.setBackground=function(){return"постави позадину"},c.setBackgroundRandom=function(){return"постави случајну позадину"},c.setBackgroundBlack=function(){return"постави црну позадину"},c.setBackgroundCave=function(){return"постави пећинску позадину"},c.setBackgroundCloudy=function(){return"постави облачну позадину"},c.setBackgroundHardcourt=function(){return"постави терен као позадину"},c.setBackgroundNight=function(){return"постави ноћну позадину"},c.setBackgroundUnderwater=function(){return"постави подводну позадину"},c.setBackgroundCity=function(){return"постави град у позадини"},c.setBackgroundDesert=function(){return"постави пустињу у позадини"},c.setBackgroundRainbow=function(){return"постави дугу у позадини"},c.setBackgroundSoccer=function(){return"постави фудбалску позадину"},c.setBackgroundSpace=function(){return"постави свемирску позадину"},c.setBackgroundTennis=function(){return"постави тениску позадину"},c.setBackgroundWinter=function(){return"постави зимску позадину"},c.setBackgroundTooltip=function(){return"Поставља слику у позадини"},c.setScoreText=function(){return"постави резултат"},c.setScoreTextTooltip=function(){return"Подешавање текста који се приказује поред резултата."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"текст"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"поставити"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"кад је стрелица на доле"},c.whenDownTooltip=function(){return"Изврши акције испод кад се притисне стрелица на доле."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"када је стрелица на лево"},c.whenLeftTooltip=function(){return"Изврши акције испод кад се притисне стрелица лево."},c.whenRight=function(){return"кад је десна стрелица"},c.whenRightTooltip=function(){return"Изврши акције испод кад се притисне стрелица десно."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"кад је стрелица на горе"},c.whenUpTooltip=function(){return"Изврши акције испод кад се притисне стрелица на горе."},c.yes=function(){return"Да"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length) }if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/sv_se/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/sv_se/common":40,"../../locale/sv_se/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/sv_se/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/sv_se/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/sv_se/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/sv_se/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/sv_se/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/sv_se/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.sv=function(a){return 1===a?"one":"other"},c.and=function(){return"och"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Handlingar"},c.catColour=function(){return"Färg"},c.catLogic=function(){return"Logik"},c.catLists=function(){return"Listor"},c.catLoops=function(){return"loopar"},c.catMath=function(){return"Matte"},c.catProcedures=function(){return"Funktioner"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variabler"},c.codeTooltip=function(){return"Se genererad JavaScript-kod."},c.continue=function(){return"Fortsätt"},c.dialogCancel=function(){return"Avbryt"},c.dialogOK=function(){return"Ok"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"Ö"},c.directionWestLetter=function(){return"V"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'"Upprepa" eller "Om" blocken måste ha andra block inuti sig för att fungera. Se till att det inre blocket sitter rätt inuti blocket.'},c.emptyFunctionBlocksErrorMsg=function(){return"Funktionsblocket måste ha andra block i sig för att fungera."},c.extraTopBlocks=function(){return"Du har extra block som inte är kopplade till händelseblock."},c.finalStage=function(){return"Grattis! Du har slutfört den sista nivån."},c.finalStageTrophies=function(a){return"Grattis! Du har slutfört den sista nivån och vann "+p(a,"numTrophies",0,"sv",{en:"en trofé",other:n(a,"numTrophies")+" troféer"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"Även toppuniversitet lär ut blockbaserad programmering (t.ex. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Men under ytan kan blocken du har byggt ihop också visas som JavaScript, världens mest använda programmeringsspråk:"},c.hashError=function(){return"Tyvärr, '%1' finns inte bland dina sparade program."},c.help=function(){return"Hjälp"},c.hintTitle=function(){return"Tips:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"Du använder alla nödvändiga typer av block, men inte på rätt sätt."},c.listVariable=function(){return"lista"},c.makeYourOwnFlappy=function(){return"Gör ditt eget Flappy-spel"},c.missingBlocksErrorMsg=function(){return"Prova med en eller flera av blocken nedan att lösa pusslet."},c.nextLevel=function(a){return"Grattis! Du slutförde pussel "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Grattis! Du slutförde pussel "+v(a,"puzzleNumber")+" och vann "+p(a,"numTrophies",0,"sv",{one:"en trofé",other:n(a,"numTrophies")+" troféer"})+"."},c.nextStage=function(a){return"Grattis! Du har klarat "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Grattis! Du klarade "+v(a,"stageName")+" och har fått "+p(a,"numTrophies",0,"sv",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Grattis! Du slutförde pussel "+v(a,"puzzleNumber")+". (Men du skulle bara behövt använda"+p(a,"numBlocks",0,"sv",{one:"1 block",other:n(a,"numBlocks")+" block"})+".)"},c.numLinesOfCodeWritten=function(a){return"Du skrev bara "+p(a,"numLines",0,"sv",{one:"1 rad",other:n(a,"numLines")+" rader"})+" kod!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Pussel "+v(a,"puzzle_number")+" av "+v(a,"stage_total")},c.repeat=function(){return"upprepa"},c.resetProgram=function(){return"Återställ"},c.runProgram=function(){return"starta programmet"},c.runTooltip=function(){return"Starta programmet som gjorts av blocken på arbetsytan."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Visa kod"},c.showGeneratedCode=function(){return"Visa kod"},c.subtitle=function(){return"en visuell programmeringsmiljö"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"Du använder alla nödvändiga typer av block, men prova att använda flera av denna typen av block för att slutföra pusslet."},c.tooManyBlocksMsg=function(){return"Detta pusslet kan lösas med block."},c.tooMuchWork=function(){return"Du fick mig att göra en hel del arbete! Du kan försöka upprepa färre gånger?"},c.toolboxHeader=function(){return"Block"},c.openWorkspace=function(){return"Hur det fungerar"},c.totalNumLinesOfCodeWritten=function(a){return"Totalt: "+p(a,"numLines",0,"sv",{one:"1 rad",other:n(a,"numLines")+" rader"})+" kod."},c.tryAgain=function(){return"Försök igen"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Gå tillbaka till föregående nivå"},c.saveToGallery=function(){return"Spara till ditt galleri"},c.savedToGallery=function(){return"Sparat till ditt galleri!"},c.typeCode=function(){return"Skriv din JavaScript-kod under instruktionerna."},c.typeFuncs=function(){return"Tillgängliga funktioner:%1"},c.typeHint=function(){return"Observera att parenteserna och semikolonen är obligatoriska."},c.workspaceHeader=function(){return"Sätt ihop dina block här: "},c.infinity=function(){return"Oändligt"},c.rotateText=function(){return"Rotera din enhet."},c.orientationLock=function(){return"Stäng av orienterings låset i enhetsinställningar."},c.wantToLearn=function(){return"Vill du lära dig att programmera?"},c.watchVideo=function(){return"Titta på videon"},c.when=function(){return"when"},c.whenRun=function(){return"när startat"},c.tryHOC=function(){return"Prove en Timme med Kod"},c.signup=function(){return"Registrera dig för introduktionskursen"},c.hintHeader=function(){return"Här är ett tips:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.sv=function(a){return 1===a?"one":"other"},c.actor=function(){return"skådespelare"},c.catActions=function(){return"Handlingar"},c.catControl=function(){return"Loopar"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logik"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Funktioner"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variabler"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Fortsätt"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"skriv här"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Grattis! Du har löst den sista uppgiften."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"spelarens poäng"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"skapa röd eldboll"},c.makeProjectileYellowHearts=function(){return"skapa gula hjärtan"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Skapa din egen berättelse"},c.moveDirectionDown=function(){return"ner"},c.moveDirectionLeft=function(){return"vänster"},c.moveDirectionRight=function(){return"höger"},c.moveDirectionUp=function(){return"upp"},c.moveDirectionRandom=function(){return"slumpad"},c.moveDistance25=function(){return"25 pixlar"},c.moveDistance50=function(){return"50 pixlar"},c.moveDistance100=function(){return"100 pixlar"},c.moveDistance200=function(){return"200 pixlar"},c.moveDistance400=function(){return"400 pixlar"},c.moveDistancePixels=function(){return"pixlar"},c.moveDistanceRandom=function(){return"slumpade pixlar"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"flytta"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"flytta neråt"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"flytta vänster"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"flytta höger"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"flytta uppåt"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Grattis! Du har slutfört den här uppgiften."},c.no=function(){return"Nej"},c.numBlocksNeeded=function(){return"Den här uppgiften kan lösas med %1 block."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"spela retro-ljud"},c.playSoundRubber=function(){return"spela gummi-ljud"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Spela det valda ljudet."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"slumpad"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"utför"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Poäng: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Ange bakgrundsbild"},c.setScoreText=function(){return"anger poäng"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"visa"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"till en häx-bild"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"till en slumpad hastighet"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"välj"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"när pil upp"},c.whenUpTooltip=function(){return"Utför handlingarna nedan när pil-upptangenten trycks ner."},c.yes=function(){return"Ja"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ta_in/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ta_in/common":40,"../../locale/ta_in/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ta_in/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ta_in/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ta_in/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ta_in/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ta_in/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ta_in/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ta=function(a){return 1===a?"one":"other"},c.and=function(){return"மற்றும்"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"செயல்கள்"},c.catColour=function(){return"வண்ணம்"},c.catLogic=function(){return"தர்க்கம்"},c.catLists=function(){return"பட்டியல்கள்"},c.catLoops=function(){return"சுழற்சிகள்"},c.catMath=function(){return"கணிதம்"},c.catProcedures=function(){return"செயல்பாடுகள்"},c.catText=function(){return"உரை"},c.catVariables=function(){return"மாறிலிகள்"},c.codeTooltip=function(){return"உருவாக்கப்பட்ட ஜாவாஉரைக் குறியீடுகளை பார்க்க."},c.continue=function(){return"தொடர்ந்து"},c.dialogCancel=function(){return"ரத்து செய்"},c.dialogOK=function(){return"சரி"},c.directionNorthLetter=function(){return"வடக்கு"},c.directionSouthLetter=function(){return"தெற்கு"},c.directionEastLetter=function(){return"கிழக்கு"},c.directionWestLetter=function(){return"மேற்கு"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"வாழ்த்துக்கள்! நீங்கள் இறுதிக் கட்டத்தை நிறைவு செய்துள்ளீர்கள்."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"ta",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"மன்னிக்கவும், '%1' எந்த சேமிக்கப்பட்ட நிரலுடனும் பொருந்தவில்லை."},c.help=function(){return"உதவி"},c.hintTitle=function(){return"குறிப்பு:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"பட்டியல்"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"வாழ்த்துக்கள்! நீங்கள் "+v(a,"puzzleNumber")+" ஆவது புதிரை நிறைவு செய்துள்ளீர்கள்."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"ta",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"வாழ்த்துக்கள்! நீங்கள் "+v(a,"stageNumber")+" ஆவது நிலையை நிறைவு செய்துள்ளீர்கள்."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"ta",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"ta",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"ta",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return v(a,"stage_total")+" ஆம் நிலையில் புதிர் "+v(a,"puzzle_number")},c.repeat=function(){return"மறுபடி"},c.resetProgram=function(){return"மீட்டமை"},c.runProgram=function(){return"நிரலை இயக்கு"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"குறியீட்டை காண்பி"},c.showGeneratedCode=function(){return"குறியீட்டை காண்பி"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"உரை"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"தொகுதிகள்"},c.openWorkspace=function(){return"இது எப்படி செயல்படுகிறது"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"ta",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"மீண்டும் முயற்சி செய்"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"முந்தைய நிலைக்கு திரும்பவும்"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"இந்த அறிவுரைகளுக்கு கீழே உங்கள் ஜாவா குறியீட்டை தட்டச்சு செய்யவும்."},c.typeFuncs=function(){return"கிடைக்கப்பெறும் செயல்பாடுகள்: %1"},c.typeHint=function(){return"குறிப்பு, அந்த அடைப்புக்குறிகள் மற்றும் அரைப்புள்ளிகள் தேவையானது."},c.workspaceHeader=function(){return"உங்கள் தொகுதிகளை இங்கே பொருத்துங்கள்: "},c.infinity=function(){return"முடிவிலி"},c.rotateText=function(){return"உங்கள் சாதனத்தை சுழற்றவும்."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"குறியீடுகள் கற்க வேண்டுமா?"},c.watchVideo=function(){return"காணொளியை பார்க்கவும்"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"ஆரம்ப பாடத்திற்கு பதிவுபெறவும்"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ta=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"செயல்கள்"},c.catControl=function(){return"சுழற்சிகள்"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"தர்க்கம்"},c.catMath=function(){return"கணிதம்"},c.catProcedures=function(){return"செயல்பாடுகள்"},c.catText=function(){return"உரை"},c.catVariables=function(){return"மாறிலிகள்"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"தொடர்ந்து"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"வாழ்த்துக்கள்! நீங்கள் இறுதிப் புதிரை தீர்த்துவிட்டீர்கள்."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"மதிப்பெண் பெறு"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"எழுமாறான"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"படப்புள்ளிகள்"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"கீழே நகர்த்த"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"இல்லை"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"எழுமாறான"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"செய்"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"உரை"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"அமை"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"ஆம்"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/th_th/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/th_th/common":40,"../../locale/th_th/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/th_th/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/th_th/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/th_th/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/th_th/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/th_th/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/th_th/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.th=function(){return"other"},c.and=function(){return"และ"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"การดำเนินการ"},c.catColour=function(){return"สี"},c.catLogic=function(){return"ตรรกะ"},c.catLists=function(){return"ลิสต์"},c.catLoops=function(){return"ลูป"},c.catMath=function(){return"คำนวณ"},c.catProcedures=function(){return"ฟังก์ชัน"},c.catText=function(){return"ข้อความ"},c.catVariables=function(){return"ตัวแปร"},c.codeTooltip=function(){return"ดูการสร้างโค้ด JavaScript."},c.continue=function(){return"ต่อไป"},c.dialogCancel=function(){return"ยกเลิก"},c.dialogOK=function(){return"ตกลง"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"สิ้นสุด"},c.emptyBlocksErrorMsg=function(){return'"ทำซ้ำ" หรือ "ถ้า" บล็อกจำเป็นต้องมีบล็อกอื่น ๆ ภายในจึงจะทำงาน. ตรวจสอบให้แน่ใจว่า บล็อกภายในเข้ากันอย่างถูกต้องแล้ว.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"คุณมีบล็อกพิเศษที่ไม่ได้แนบมาที่บล็อกในปัจจุบัน."},c.finalStage=function(){return"ขอแสดงความยินดี ขั้นตอนสุดท้ายสำเร็จแล้ว."},c.finalStageTrophies=function(a){return"ขอแสดงความยินดี คุณได้เสร็จสิ้นขั้นตอนสุดท้าย และชนะ "+p(a,"numTrophies",0,"th",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"มหาวิทยาลัยชั้นนำสอนการเขียนโค้ดแบบ บล็อกเบสต์ (e.g., "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). แต่ภายใต้กรอบสี่เหลี่ยมนั้น, คุณต้องประมวลผลให้บล็อกของคุณแสดงใน ภาษาจาว่า, ซึ่งเป็นภาษาที่กว้าง และสำคัญของโลก."},c.hashError=function(){return"ขออภัย '%1' ไม่ตรงกับโปรแกรมที่บันทึกไว้."},c.help=function(){return"ช่วยเหลือ"},c.hintTitle=function(){return"คำแนะนำ:"},c.jump=function(){return"กระโดด"},c.levelIncompleteError=function(){return"คุณกำลังใช้ทุกสิ่งทุกอย่างที่จำเป็นของบล็อก แต่ไม่ใช่ทางที่ถูกต้อง."},c.listVariable=function(){return"ลิสต์"},c.makeYourOwnFlappy=function(){return"สร้าง Flappy เกม ไว้เป็นของเราเอง"},c.missingBlocksErrorMsg=function(){return"ลองอย่างน้อยหนึ่งบล็อกด้านล่างเพื่อแก้ปริศนานี้."},c.nextLevel=function(a){return"ขอแสดงความยินดี คุณเสร็จสิ้นปริศนา "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"ขอแสดงความยินดี คุณเสร็จสิ้นปริศนา "+v(a,"puzzleNumber")+" และชนะ "+p(a,"numTrophies",0,"th",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"เย้ ยินดีด้วย คุณผ่านด่าน "+v(a,"stageName")+" แล้ว"},c.nextStageTrophies=function(a){return"เย้ ยินดีด้วย คุณผ่านด่าน "+v(a,"stageName")+" แล้ว และยังได้ "+p(a,"numTrophies",0,"th",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+" อีกด้วย !" },c.numBlocksNeeded=function(a){return"ขอแสดงความยินดี คุณสมบูรณ์ปริศนา "+v(a,"puzzleNumber")+" (อย่างไรก็ตาม คุณสามารถใช้เฉพาะ "+p(a,"numBlocks",0,"th",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"คุณเพิ่งเขียนรหัส "+p(a,"numLines",0,"th",{one:"1 บรรทัด",other:n(a,"numLines")+" บรรทัด"})+"!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"ปริศนา "+v(a,"puzzle_number")+" ของ "+v(a,"stage_total")},c.repeat=function(){return"ทำซ้ำ"},c.resetProgram=function(){return"ตั้งค่าใหม่"},c.runProgram=function(){return"เริ่ม"},c.runTooltip=function(){return"เรียกใช้โปรแกรมที่กำหนด โดยบล็อกในพื้นที่ทำงาน."},c.score=function(){return"score"},c.showCodeHeader=function(){return"แสดงโค้ด"},c.showGeneratedCode=function(){return"แสดงโค้ด"},c.subtitle=function(){return"มุมมองสภาพการเขียนโปรแกรม"},c.textVariable=function(){return"ข้อความ"},c.tooFewBlocksMsg=function(){return"คุณได้ใช้ทุกบล็อกที่จำเป็นแล้ว แต่ลองให้บล็อกหลากหลายมากกว่านี้เพื่อให้การแก้ปัญหาสมบูรณ์แบบ."},c.tooManyBlocksMsg=function(){return"ปัญหานี้สามารถแก้ด้วยบล็อกนี้คือ ."},c.tooMuchWork=function(){return"คุณทำให้ฉันทำงานหนัก! คุณจะทำซ้ำให้น้อยลงได้ไหม?"},c.toolboxHeader=function(){return"บล็อก"},c.openWorkspace=function(){return"มันทำงานได้อย่างไร"},c.totalNumLinesOfCodeWritten=function(a){return"รวมสรุป: "+p(a,"numLines",0,"th",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"ลองอีกครั้ง"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"กลับไปยังระดับก่อนหน้า"},c.saveToGallery=function(){return"บันทึกไว้ในแกลลอรี่"},c.savedToGallery=function(){return"บันทึกแล้ว!"},c.typeCode=function(){return"พิมพ์โค้ด JavaScript ของคุณด้านล่างคำสั่งเหล่านี้"},c.typeFuncs=function(){return"จำนวนฟังก์ชันที่ใช้ได้: %1"},c.typeHint=function(){return"หมายเหตุวงเล็บและเครื่องหมายอัฒภาคจำเป็นต้องใช้."},c.workspaceHeader=function(){return"รวบรวมบล็อกของคุณที่นี่: "},c.infinity=function(){return"ไม่จำกัด"},c.rotateText=function(){return"หมุนอุปกรณ์ของคุณ."},c.orientationLock=function(){return"ปิดล็อควางแนวในการตั้งค่าอุปกรณ์."},c.wantToLearn=function(){return"ต้องการศึกษาการเขียนโปรแกรมหรือ"},c.watchVideo=function(){return"ดูวีดีโอ"},c.when=function(){return"เมื่อ"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"ลองใช้ Hour of Code สิ"},c.signup=function(){return"ลงทะเบียนเพื่อทดลองเรียน"},c.hintHeader=function(){return"นี่คือเคล็ดลับ:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.th=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"การดำเนินการ"},c.catControl=function(){return"ลูป"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"ตรรกะ"},c.catMath=function(){return"คำนวณ"},c.catProcedures=function(){return"ฟังก์ชัน"},c.catText=function(){return"ข้อความ"},c.catVariables=function(){return"ตัวแปร"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"ต่อไป"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"สร้างเรื่องของคุณเอง"},c.moveDirectionDown=function(){return"ลง"},c.moveDirectionLeft=function(){return"ซ้าย"},c.moveDirectionRight=function(){return"ขวา"},c.moveDirectionUp=function(){return"ขึ้น"},c.moveDirectionRandom=function(){return"สุ่ม"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"ย้ายตัวละครไปตามระยะทางและทิศทางที่ระบุ"},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"ย้ายตัวละครลงข้างล่าง"},c.moveLeft=function(){return"ย้ายไปทางซ้าย"},c.moveLeftTooltip=function(){return"ย้ายตัวละครไปทางซ้าย"},c.moveRight=function(){return"ย้ายไปทางขวา"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"สุ่ม"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"คะแนน: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"ย้ายตัวละครไปยังตำแหน่งที่ระบุทันที"},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"แบ่งปันเรื่องราวของคุณ:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"ข้อความ"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"ชุด"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"รอการคลิก"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"รอครึ่งวินาที"},c.waitFor1Second=function(){return"รอ 1 วินาที"},c.waitFor2Seconds=function(){return"รอ 2 วินาที"},c.waitFor5Seconds=function(){return"รอ 5 วินาที"},c.waitFor10Seconds=function(){return"รอ 10 วินาที"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"รอตามเวลาที่ระบุ หรือรอจนกว่าจะมีการคลิกเกิดขึ้น"},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"เมื่อกดลูกศรลง"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"เมื่อกดลูกศรซ้าย"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"เมื่อกดลูกศรขวา"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"เมื่อคลิกที่ตัวละคร"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"เมื่อกดลูกศรขึ้น"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"ใช่"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E]; if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/tr_tr/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/tr_tr/common":40,"../../locale/tr_tr/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/tr_tr/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/tr_tr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/tr_tr/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/tr_tr/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/tr_tr/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/tr_tr/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.tr=function(){return"other"},c.and=function(){return"ve"},c.blocklyMessage=function(){return"Parçalı"},c.catActions=function(){return"İşlemler"},c.catColour=function(){return"Renk"},c.catLogic=function(){return"Mantık"},c.catLists=function(){return"Listeler"},c.catLoops=function(){return"Döngüler"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Fonksiyonlar"},c.catText=function(){return"Yazı"},c.catVariables=function(){return"Değişkenler"},c.codeTooltip=function(){return"Oluşturulan JavaScript kodunu gör."},c.continue=function(){return"Devam"},c.dialogCancel=function(){return"İptal"},c.dialogOK=function(){return"TAMAM"},c.directionNorthLetter=function(){return"K"},c.directionSouthLetter=function(){return"G"},c.directionEastLetter=function(){return"D"},c.directionWestLetter=function(){return"B"},c.end=function(){return"son"},c.emptyBlocksErrorMsg=function(){return'"Tekrar" bloğu veya "Eğer" bloğunun çalışması için içerisinde bir başka blok yer almalıdır. İçteki bloğu, dış blok içerisine yerleştirdiğine emin ol.'},c.emptyFunctionBlocksErrorMsg=function(){return"Fonksiyon bloğunun çalışabilmesi için içine başka bloklar koymalısın."},c.extraTopBlocks=function(){return"Bir olay bloğuna eklenmemiş ekstra blokların var."},c.finalStage=function(){return"Son aşamayı bitirdiniz. Tebrikler!"},c.finalStageTrophies=function(a){return"Tebrikler! Son aşamayı bitirerek "+p(a,"numTrophies",0,"tr",{one:"bir ganimet",other:n(a,"numTrophies")+" ganimet"})+" kazandınız."},c.finish=function(){return"Bitir"},c.generatedCodeInfo=function(a){return"Dünyanın en iyi üniversiteleri bile yap-boz oyun tabanlı kodlama öğretiyor (Örn. "+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+"). Ayrıca detaylı incelerseniz, birleştirdiğiniz bloklar dünyanın en yaygın kullanılan kodlama dili olan JavaScript dilinde de görüntüleniyor:"},c.hashError=function(){return"Üzgünüz, '%1' kayıtlı herhangi bir programa karşılık gelmez."},c.help=function(){return"Yardım"},c.hintTitle=function(){return"İpucu:"},c.jump=function(){return"atla"},c.levelIncompleteError=function(){return"Tüm gerekli türdeki blokları kullanıyorsunuz ama doğru şekilde değil."},c.listVariable=function(){return"liste"},c.makeYourOwnFlappy=function(){return"Kendi Flappy Oyununu Yap"},c.missingBlocksErrorMsg=function(){return"Aşağıdaki bloklardan bir ya da birden fazlasını kullanarak bulmacayı çözmeye çalışın."},c.nextLevel=function(a){return"Tebrikler! Bulmaca "+v(a,"puzzleNumber")+" tamamlandı."},c.nextLevelTrophies=function(a){return"Tebrikler! Bulmaca "+v(a,"puzzleNumber")+" tamamlandı ve "+p(a,"numTrophies",0,"tr",{one:"bir kupa",other:n(a,"numTrophies")+" kupa"})+" kazandınız."},c.nextStage=function(a){return"Tebrikler! "+v(a,"stageName")+" tamamlandı."},c.nextStageTrophies=function(a){return"Tebrikler! Kademe "+v(a,"stageNumber")+" tamamlandı ve "+p(a,"numTrophies",0,"tr",{one:"bir kupa",other:n(a,"numTrophies")+" kupalar"})+" kazandınız." },c.numBlocksNeeded=function(a){return"Tebrikler! Bulmaca "+v(a,"puzzleNumber")+" tamamlandı. (Ancak, sadece "+p(a,"numBlocks",0,"tr",{one:"1 blok",other:n(a,"numBlocks")+" blok"})+" kullanmış olabilirdiniz.)"},c.numLinesOfCodeWritten=function(a){return"Tam olarak "+p(a,"numLines",0,"tr",{one:"1 satır",other:n(a,"numLines")+" satır"})+" kod yazdınız!"},c.play=function(){return"oynat"},c.puzzleTitle=function(a){return"Bulmaca "+v(a,"puzzle_number")+" / "+v(a,"stage_total")},c.repeat=function(){return"tekrarla"},c.resetProgram=function(){return"Yeniden başla"},c.runProgram=function(){return"Çalıştır"},c.runTooltip=function(){return"Çalişma alaninda bloklar tarafından tanımlanmış bir program çalıştır."},c.score=function(){return"puan"},c.showCodeHeader=function(){return"Kodu Görüntüle"},c.showGeneratedCode=function(){return"Kodu Görüntüle"},c.subtitle=function(){return"Bir görsel programa ortamı"},c.textVariable=function(){return"metin yazısı"},c.tooFewBlocksMsg=function(){return"Tüm gerekli blok türlerini kullanıyorsun,fakat bulmacayı tamamlamak için bu blok tiplerinden daha fazla kullanmayı dene."},c.tooManyBlocksMsg=function(){return"Bu bulmaca bloklarıyla çözülebilir."},c.tooMuchWork=function(){return"Bana çok fazla iş yaptırdın!Daha az tekrar etmeyi deneyebilir misin ?"},c.toolboxHeader=function(){return"Bloklar"},c.openWorkspace=function(){return"Nasıl Çalışır"},c.totalNumLinesOfCodeWritten=function(a){return"Toplam: "+p(a,"numLines",0,"tr",{one:"1 satır",other:n(a,"numLines")+" satır"})+" kod."},c.tryAgain=function(){return"Tekrar dene"},c.hintRequest=function(){return"İpucunu gör"},c.backToPreviousLevel=function(){return"Önceki seviyeye dön"},c.saveToGallery=function(){return"Galerine kaydet"},c.savedToGallery=function(){return"Galerine kaydedildi!"},c.typeCode=function(){return"Açıklamaların altına kendi JavaScript kodunu yaz."},c.typeFuncs=function(){return"Uygun fonksiyon:%1"},c.typeHint=function(){return"Parantezlerin ve noktalı virgüllerin gerekli olduğuna dikkat et."},c.workspaceHeader=function(){return"Bloklarını burda topla: "},c.infinity=function(){return"Sonsuz"},c.rotateText=function(){return"Cihazınızı döndürün."},c.orientationLock=function(){return"Yönlendirme kilidini aygıt ayarlarından devre dışı bırakın."},c.wantToLearn=function(){return"Kod yazmayı öğrenmek ister misiniz?"},c.watchVideo=function(){return"Videoyu İzle"},c.when=function(){return"Ne zaman"},c.whenRun=function(){return"Çalıştığı zaman"},c.tryHOC=function(){return"Kodlama Saati'ni Deneyin"},c.signup=function(){return"Giriş dersi için üye olun"},c.hintHeader=function(){return"İşte bir ipucu:"},c.genericFeedback=function(){return"Sonucunu gör ve programını düzeltmeyi dene."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.tr=function(){return"other"},c.actor=function(){return"aktör"},c.catActions=function(){return"Eylemler"},c.catControl=function(){return"Döngüler"},c.catEvents=function(){return"Olaylar"},c.catLogic=function(){return"Mantık"},c.catMath=function(){return"Matematik"},c.catProcedures=function(){return"Fonksiyonlar"},c.catText=function(){return"metin yazısı"},c.catVariables=function(){return"Değişkenler"},c.changeScoreTooltip=function(){return"Skoru bir puan arttır veya azalt."},c.changeScoreTooltipK1=function(){return"Skora bir puan ekle."},c.continue=function(){return"Devam Et"},c.decrementPlayerScore=function(){return"Puanı sil"},c.defaultSayText=function(){return"buraya yazın"},c.emotion=function(){return"ruh hali"},c.finalLevel=function(){return"Tebrikler! Son bulmacayı da çözdünüz."},c.hello=function(){return"merhaba"},c.helloWorld=function(){return"Merhaba Dünya!"},c.incrementPlayerScore=function(){return"Skor puanı"},c.makeProjectileDisappear=function(){return"yok et"},c.makeProjectileBounce=function(){return"atla"},c.makeProjectileBlueFireball=function(){return"Mavi alev topu yap"},c.makeProjectilePurpleFireball=function(){return"mavi alev topu yap"},c.makeProjectileRedFireball=function(){return"kırmızı ateş topu yap\n"},c.makeProjectileYellowHearts=function(){return"sarı kalpler yap"},c.makeProjectilePurpleHearts=function(){return"mor kalpler yap"},c.makeProjectileRedHearts=function(){return"kırmızı kalpler yap"},c.makeProjectileTooltip=function(){return"Çarpıştığında yok olan veya sıçrayan bir mermi yap."},c.makeYourOwn=function(){return"Kendi Hikayeni Yarat"},c.moveDirectionDown=function(){return"aşağı"},c.moveDirectionLeft=function(){return"sol"},c.moveDirectionRight=function(){return"sağ"},c.moveDirectionUp=function(){return"yukarı"},c.moveDirectionRandom=function(){return"rastgele"},c.moveDistance25=function(){return"25 piksel"},c.moveDistance50=function(){return"50 piksel"},c.moveDistance100=function(){return"100 piksel"},c.moveDistance200=function(){return"200 piksel"},c.moveDistance400=function(){return"400 piksel"},c.moveDistancePixels=function(){return"piksel"},c.moveDistanceRandom=function(){return"rasgele piksel"},c.moveDistanceTooltip=function(){return"Bir oyuncuyu belirli bir yönde belirli bir mesafe hareket ettirin."},c.moveSprite=function(){return"hareket et"},c.moveSpriteN=function(a){return"taşı aktör "+v(a,"spriteIndex")},c.moveDown=function(){return"aşağı yönde ilerle"},c.moveDownTooltip=function(){return"Bir oyuncuyu aşağı yönde hareket ettirin."},c.moveLeft=function(){return"sola ilerle"},c.moveLeftTooltip=function(){return"Bir oyuncuyu sola doğru hareket ettir."},c.moveRight=function(){return"sağa ilerle"},c.moveRightTooltip=function(){return"Bir oyuncuyu sağa doğru hareket ettir."},c.moveUp=function(){return"yukarı hareket et"},c.moveUpTooltip=function(){return"Bir oyuncuyu yukarı doğru hareket ettir."},c.moveTooltip=function(){return"Bir aktör taşı."},c.nextLevel=function(){return"Tebrikler! Bu bulmacayı tamamladınız."},c.no=function(){return"Hayır"},c.numBlocksNeeded=function(){return"Bu puzzle %1 blok ile çözülebilir."},c.ouchExclamation=function(){return"Ah!"},c.playSoundCrunch=function(){return"ezilme sesi çal"},c.playSoundGoal1=function(){return'"Hedef 1" sesi çal'},c.playSoundGoal2=function(){return'"Hedef 2" sesi çal'},c.playSoundHit=function(){return'"Çarpma" sesi çal'},c.playSoundLosePoint=function(){return'"Puan kaybetme" sesi çal'},c.playSoundLosePoint2=function(){return'"Puan kaybetme 2" sesi çal'},c.playSoundRetro=function(){return'"Retro" sesi çal'},c.playSoundRubber=function(){return'"Lastik" sesi çıkart'},c.playSoundSlap=function(){return'"Tokat" sesi çıkart'},c.playSoundTooltip=function(){return"Seçilen sesi çal."},c.playSoundWinPoint=function(){return'"Puan kazanma" sesi çal'},c.playSoundWinPoint2=function(){return'"Puan kazanma 2" sesi çal'},c.playSoundWood=function(){return'"Odun" sesi çıkart'},c.positionOutTopLeft=function(){return"yukarıdaki sol üst konuma"},c.positionOutTopRight=function(){return"yukarıdaki sağ üst konuma"},c.positionTopOutLeft=function(){return"sol üst dış konuma"},c.positionTopLeft=function(){return"sol üst konuma"},c.positionTopCenter=function(){return"üst orta konuma"},c.positionTopRight=function(){return"sağ üst konuma"},c.positionTopOutRight=function(){return"sağ üst dış konuma"},c.positionMiddleLeft=function(){return"orta sol konuma"},c.positionMiddleCenter=function(){return"ortanın ortası konuma"},c.positionMiddleRight=function(){return"orta sağ konuma"},c.positionBottomOutLeft=function(){return"sol alt dış konuma"},c.positionBottomLeft=function(){return"sol alt konuma"},c.positionBottomCenter=function(){return"alt orta konuma"},c.positionBottomRight=function(){return"sağ alt konuma"},c.positionBottomOutRight=function(){return"sağ alt dış konuma"},c.positionOutBottomLeft=function(){return"Aşağıdaki sol alt konuma"},c.positionOutBottomRight=function(){return"Aşağıdaki sağ alt konuma"},c.positionRandom=function(){return"rastgele konuma"},c.projectileBlueFireball=function(){return"mavi ateş topu"},c.projectilePurpleFireball=function(){return"mor ateş topu"},c.projectileRedFireball=function(){return"kırmızı ateş topu"},c.projectileYellowHearts=function(){return"sarı kalpler"},c.projectilePurpleHearts=function(){return"mor kalpler"},c.projectileRedHearts=function(){return"kırmızı kalpler"},c.projectileRandom=function(){return"rastgele"},c.reinfFeedbackMsg=function(){return'Oyununuzu tekrar oynamak için "yeniden dene" butonuna basabilirsiniz.'},c.repeatForever=function(){return"Sonsuza kadar tekrarla"},c.repeatDo=function(){return"yap"},c.repeatForeverTooltip=function(){return"Oyun çalışırken eylemleri bu blok içinde tekrarlı yürüt."},c.saySprite=function(){return"de"},c.saySpriteN=function(a){return"aktör "+v(a,"spriteIndex")+" de"},c.saySpriteTooltip=function(){return"Bir konuşma balonu ile ilişkili metni belirtilen aktörden aç."},c.scoreText=function(a){return"Skor: "+v(a,"playerScore")},c.setBackground=function(){return"ayarla arkaplan"},c.setBackgroundRandom=function(){return"ayarla rastgele arkaplan"},c.setBackgroundBlack=function(){return"ayarla siyah arkaplan"},c.setBackgroundCave=function(){return"ayarla mağara arkaplan"},c.setBackgroundCloudy=function(){return"ayarla bulutlu arkaplan"},c.setBackgroundHardcourt=function(){return"ayarla arkaplan sert zemin"},c.setBackgroundNight=function(){return"Gece arka planını ayarla"},c.setBackgroundUnderwater=function(){return"Sualtı arka planını ayarla"},c.setBackgroundCity=function(){return"Şehir arka planını ayarla"},c.setBackgroundDesert=function(){return"Çöl arka planını ayarla"},c.setBackgroundRainbow=function(){return"Gökkuşağı arkaplanını ayarla"},c.setBackgroundSoccer=function(){return"Futbol arka planını ayarla"},c.setBackgroundSpace=function(){return"Uzay arka planını ayarla"},c.setBackgroundTennis=function(){return"Tenis arka planını ayarla"},c.setBackgroundWinter=function(){return"Kış arka planını ayarla"},c.setBackgroundTooltip=function(){return"Arka plan resmini ayarlar"},c.setScoreText=function(){return"skor ayarla"},c.setScoreTextTooltip=function(){return"Skor alanında görüntülenecek metni ayarlar."},c.setSpriteEmotionAngry=function(){return"sinirli hal için"},c.setSpriteEmotionHappy=function(){return"mutlu hal için"},c.setSpriteEmotionNormal=function(){return"normal hal için"},c.setSpriteEmotionRandom=function(){return"rastgele hal için"},c.setSpriteEmotionSad=function(){return"üzgün hal için"},c.setSpriteEmotionTooltip=function(){return"Aktör ruh halini ayarla"},c.setSpriteAlien=function(){return"uzaylı görüntüsü için"},c.setSpriteBat=function(){return"yarasa resmi için"},c.setSpriteBird=function(){return"kuş resmi için"},c.setSpriteCat=function(){return"kedi resmi için"},c.setSpriteCaveBoy=function(){return"mağara çocuğu resmine"},c.setSpriteCaveGirl=function(){return"mağara kızı resmine"},c.setSpriteDinosaur=function(){return"dinozor resmi için"},c.setSpriteDog=function(){return"köpek resmi için"},c.setSpriteDragon=function(){return"ejderha resmi için"},c.setSpriteGhost=function(){return"hayalet resmi için"},c.setSpriteHidden=function(){return"gizli görüntü için"},c.setSpriteHideK1=function(){return"gizle"},c.setSpriteKnight=function(){return"şövalye resmi için"},c.setSpriteMonster=function(){return"canavar resmi için"},c.setSpriteNinja=function(){return"maskeli ninja resmi için"},c.setSpriteOctopus=function(){return"ahtapot resmi için"},c.setSpritePenguin=function(){return"penguen resmi için"},c.setSpritePirate=function(){return"korsan resmi için"},c.setSpritePrincess=function(){return"prenses resmi için"},c.setSpriteRandom=function(){return"rasgele bir resim için"},c.setSpriteRobot=function(){return"robot resmi için"},c.setSpriteShowK1=function(){return"göster"},c.setSpriteSpacebot=function(){return"Uzaybotu görüntüsüne"},c.setSpriteSoccerGirl=function(){return"futbolcu kız resmine"},c.setSpriteSoccerBoy=function(){return"futbolcu çocuk resmine"},c.setSpriteSquirrel=function(){return"sincap resmi için"},c.setSpriteTennisGirl=function(){return"tenisçi kız resmine"},c.setSpriteTennisBoy=function(){return"tenizçi çocuk resmine"},c.setSpriteUnicorn=function(){return"tek boynuzlu at resmi için"},c.setSpriteWitch=function(){return"cadı resmi için"},c.setSpriteWizard=function(){return"büyücü resmi için"},c.setSpritePositionTooltip=function(){return"Anlık olarak aktörü belirtilen konuma taşır."},c.setSpriteK1Tooltip=function(){return"Belirtilen aktörü gösterir ya da gizler."},c.setSpriteTooltip=function(){return"Aktör resmini ayarlar"},c.setSpriteSizeRandom=function(){return"rastgele bi boyuta"},c.setSpriteSizeVerySmall=function(){return"çok küçük bir boyuta\n"},c.setSpriteSizeSmall=function(){return"küçük bir boyuta\n"},c.setSpriteSizeNormal=function(){return"normal bir boyutu"},c.setSpriteSizeLarge=function(){return"büyük bir boyuta"},c.setSpriteSizeVeryLarge=function(){return"çok büyük bir boyuta"},c.setSpriteSizeTooltip=function(){return"Oyuncu boyutunu ayarlama"},c.setSpriteSpeedRandom=function(){return"rastgele bir hıza"},c.setSpriteSpeedVerySlow=function(){return"çok yavaş bir hıza"},c.setSpriteSpeedSlow=function(){return"yavaş bir hıza"},c.setSpriteSpeedNormal=function(){return"normal bir hıza"},c.setSpriteSpeedFast=function(){return"süratli bir hıza"},c.setSpriteSpeedVeryFast=function(){return"çok süratli bir hıza"},c.setSpriteSpeedTooltip=function(){return"Bir aktörün hızını ayarlar"},c.setSpriteZombie=function(){return"bir zombi resmine"},c.shareStudioTwitter=function(){return"Yaptığım hikayeye göz atın. @codeorg ile kendim yazdım"},c.shareGame=function(){return"hikayeni paylaş:"},c.showTitleScreen=function(){return"ekran başlığını göster"},c.showTitleScreenTitle=function(){return"başlık"},c.showTitleScreenText=function(){return"metin"},c.showTSDefTitle=function(){return"başlık tipi burada"},c.showTSDefText=function(){return"yazı tipi burada"},c.showTitleScreenTooltip=function(){return"İlişkili başlık ve metin içeren bir başlık ekranı göster."},c.setSprite=function(){return"ayarla"},c.setSpriteN=function(a){return"ayarla aktör "+v(a,"spriteIndex")},c.soundCrunch=function(){return"çatlak"},c.soundGoal1=function(){return"hedef 1"},c.soundGoal2=function(){return"hedef 2"},c.soundHit=function(){return"çarpma"},c.soundLosePoint=function(){return"puan kaybetme"},c.soundLosePoint2=function(){return"puan kaybetme 2"},c.soundRetro=function(){return"tersine"},c.soundRubber=function(){return"kauçuk"},c.soundSlap=function(){return"tokat"},c.soundWinPoint=function(){return"puan kazan"},c.soundWinPoint2=function(){return"puan kazanma 2"},c.soundWood=function(){return"ahşap"},c.speed=function(){return"hız"},c.stopSprite=function(){return"dur"},c.stopSpriteN=function(a){return"durdur aktör "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Aktörün hareketini durdurur."},c.throwSprite=function(){return"fırlat"},c.throwSpriteN=function(a){return"aktör "+v(a,"spriteIndex")+" fırlat"},c.throwTooltip=function(){return"Belirlenen aktör atılacak cismi fırlatır."},c.vanish=function(){return"kaybol"},c.vanishActorN=function(a){return"kaybol aktör "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Aktör kaybolur."},c.waitFor=function(){return"için bekle"},c.waitSeconds=function(){return"saniye"},c.waitForClick=function(){return"tıklamak için bekle"},c.waitForRandom=function(){return"rastgele için bekle"},c.waitForHalfSecond=function(){return"yarım saniye bekleyin"},c.waitFor1Second=function(){return"1 saniye bekleyin"},c.waitFor2Seconds=function(){return"2 saniye bekleyin"},c.waitFor5Seconds=function(){return"5 saniye bekleyin"},c.waitFor10Seconds=function(){return"10 saniye bekleyin"},c.waitParamsTooltip=function(){return"Belirtilen saniye kadar bekler, ya da tıklamaya kadar beklemesi için 0 kullanın."},c.waitTooltip=function(){return"Bir tıklama oluşana kadar veya belirtilen zaman kadar bekler."},c.whenArrowDown=function(){return"aşağı ok"},c.whenArrowLeft=function(){return"sol ok"},c.whenArrowRight=function(){return"sağ ok"},c.whenArrowUp=function(){return"yukarı ok"},c.whenArrowTooltip=function(){return"Belirtilen ok tuşuna basıldığında aşağıdaki eylemleri yürütür."},c.whenDown=function(){return"aşağı oka basıldığında"},c.whenDownTooltip=function(){return"Aşağı oka basıldığında, aşağıdaki işlemleri yürüt."},c.whenGameStarts=function(){return"hikaye başlarken"},c.whenGameStartsTooltip=function(){return"Hikaye başladığında aşağıda eylemleri yürüt."},c.whenLeft=function(){return"sol oka basıldığında"},c.whenLeftTooltip=function(){return"Sol oka basıldığında, aşağıdaki işlemleri yürüt."},c.whenRight=function(){return"sağ oka basıldığında"},c.whenRightTooltip=function(){return"Sağ oka basıldığında, aşağıdaki işlemleri yürüt."},c.whenSpriteClicked=function(){return"aktör tıklandığında"},c.whenSpriteClickedN=function(a){return"aktör "+v(a,"spriteIndex")+" e tıkladığında"},c.whenSpriteClickedTooltip=function(){return"Aktör tıklandığında aşağıdaki eylemleri yürüt."},c.whenSpriteCollidedN=function(a){return"Aktör "+v(a,"spriteIndex")+" zamanında"},c.whenSpriteCollidedTooltip=function(){return"Bir aktör başka bir aktöre dokunduğunda aşağıda eylemleri yürüt."},c.whenSpriteCollidedWith=function(){return"dokunur"},c.whenSpriteCollidedWithN=function(a){return"dokunur aktör "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"alt kenara dokunur"},c.whenSpriteCollidedWithLeftEdge=function(){return"sol kenara dokunur"},c.whenSpriteCollidedWithRightEdge=function(){return"sağ kenara dokunur"},c.whenSpriteCollidedWithTopEdge=function(){return"üst kenara dokunur"},c.whenUp=function(){return"yukarı oka basıldığında"},c.whenUpTooltip=function(){return"Yukarı ok tuşu basıldığında aşağıdaki eylemleri yürüt."},c.yes=function(){return"Evet"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1]; if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/uk_ua/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/uk_ua/common":40,"../../locale/uk_ua/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/uk_ua/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/uk_ua/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/uk_ua/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/uk_ua/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/uk_ua/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/uk_ua/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.uk=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.and=function(){return"і"},c.blocklyMessage=function(){return"Блоклі"},c.catActions=function(){return"Дії"},c.catColour=function(){return"Колір"},c.catLogic=function(){return"Логіка"},c.catLists=function(){return"Списки"},c.catLoops=function(){return"Цикли"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функції"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Змінні"},c.codeTooltip=function(){return"Див. згенерований код JavaScript."},c.continue=function(){return"Далі"},c.dialogCancel=function(){return"Скасувати"},c.dialogOK=function(){return"Гаразд"},c.directionNorthLetter=function(){return"Пн"},c.directionSouthLetter=function(){return"Пд"},c.directionEastLetter=function(){return"Сх"},c.directionWestLetter=function(){return"Зх"},c.end=function(){return"кінець"},c.emptyBlocksErrorMsg=function(){return'Блоки "Повторити" та "Якщо" повинні містити інші блоки. Переконайтесь, що внутрішній блок належно розміщений всередині зовнішнього.'},c.emptyFunctionBlocksErrorMsg=function(){return"Для функціонування цей блок повинен містити інші блоки."},c.extraTopBlocks=function(){return"У вас є додаткові блоки, які не прив'язані до жодного блоку подій."},c.finalStage=function(){return"Вітання! Завершено останній етап."},c.finalStageTrophies=function(a){return"Вітання! Ви завершили останній етап і виграли "+p(a,"numTrophies",0,"uk",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Готово"},c.generatedCodeInfo=function(a){return"Навіть кращі університети навчають програмуванню на основі блоків (наприклад, "+v(a,"berkeleyLink")+" "+v(a,"harvardLink")+"). Але всередині ті блоки, які ви щойно склали, можуть показуватись у JavaScript, найпоширенішій мові програмування:"},c.hashError=function(){return"Шкода, але '%1' не відповідає жодній збереженій програмі."},c.help=function(){return"Допомога"},c.hintTitle=function(){return"Підказка:"},c.jump=function(){return"стрибок"},c.levelIncompleteError=function(){return"Використано усі необхідні типи блоків, але у неправильному порядку."},c.listVariable=function(){return"список"},c.makeYourOwnFlappy=function(){return"Створити свою власну гру в Пурха (Flappy Game)"},c.missingBlocksErrorMsg=function(){return"Щоб розв'язати завдання, спробуйте один або кілька блоків нижче."},c.nextLevel=function(a){return"Вітання! Завершено завдання "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Вітання! Ви завершили завдання "+v(a,"puzzleNumber")+" та виграли "+p(a,"numTrophies",0,"uk",{one:"трофей",other:n(a,"numTrophies")+" трофеїв"})+"."},c.nextStage=function(a){return"Вітаємо! Ви завершили "+v(a,"stageName")+"." },c.nextStageTrophies=function(a){return"Вітаємо! Ви завершили етап "+v(a,"stageName")+" та виграли "+p(a,"numTrophies",0,"uk",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"Вітаємо! Ви завершили завдання "+v(a,"puzzleNumber")+". (Проте, його можна було вирішити, використавши лише "+p(a,"numBlocks",0,"uk",{one:"1 блок",other:n(a,"numBlocks")+" блоки"})+".)"},c.numLinesOfCodeWritten=function(a){return"Ви щойно написали "+p(a,"numLines",0,"uk",{one:"1 рядок",other:n(a,"numLines")+" рядків"})+" коду!"},c.play=function(){return"грати"},c.puzzleTitle=function(a){return"Завдання "+v(a,"puzzle_number")+" з "+v(a,"stage_total")},c.repeat=function(){return"повторити"},c.resetProgram=function(){return"Скидання"},c.runProgram=function(){return"Запустити"},c.runTooltip=function(){return"Запустити програму, що складається з блоків робочої області."},c.score=function(){return"рахунок"},c.showCodeHeader=function(){return"Показати код"},c.showGeneratedCode=function(){return"Показати код"},c.subtitle=function(){return"Візуальне середовище програмування"},c.textVariable=function(){return"текст"},c.tooFewBlocksMsg=function(){return"Ви використали усі необхідні типи блоків, але спробуйте використати більше таких блоків, щоб розв'язати завдання."},c.tooManyBlocksMsg=function(){return"Це завдання можна розв'язати, використавши блоків."},c.tooMuchWork=function(){return"Ви змусили мене попрацювати! Може спробуємо менше повторів?"},c.toolboxHeader=function(){return"Блоки"},c.openWorkspace=function(){return"Як це працює"},c.totalNumLinesOfCodeWritten=function(a){return"За весь час: "+p(a,"numLines",0,"uk",{one:"1 рядок",other:n(a,"numLines")+" рядків"})+" коду."},c.tryAgain=function(){return"Спробуй знову"},c.hintRequest=function(){return"Подивитись підказку"},c.backToPreviousLevel=function(){return"Повернутися до попереднього рівня"},c.saveToGallery=function(){return"Зберегти до вашої колекції"},c.savedToGallery=function(){return"Збережено в галерею!"},c.typeCode=function(){return"Запишіть нижче свій код JavaScript згідно із вказівками."},c.typeFuncs=function(){return"Доступні функції: %1"},c.typeHint=function(){return"Зверніть увагу: потрібні дужки та крапки з комою."},c.workspaceHeader=function(){return"Збирайте свої блоки тут: "},c.infinity=function(){return"Нескінченність"},c.rotateText=function(){return"Повертайте свій пристрій."},c.orientationLock=function(){return"Увімкніть блокування повороту у налаштування пристрою."},c.wantToLearn=function(){return"Хочете навчитись програмувати?"},c.watchVideo=function(){return"Переглянути відео"},c.when=function(){return"коли"},c.whenRun=function(){return"під час виконання"},c.tryHOC=function(){return"Спробуйте годину коду"},c.signup=function(){return"Підпишіться на вступний курс"},c.hintHeader=function(){return"Підказка:"},c.genericFeedback=function(){return"Подивіться, на чому ви зупинились і спробуйте виправити свою програму."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.uk=function(a){return a%10==1&&a%100!=11?"one":a%10>=2&&4>=a%10&&(12>a%100||a%100>14)&&a==Math.floor(a)?"few":a%10===0||a%10>=5&&9>=a%10||a%100>=11&&14>=a%100&&a==Math.floor(a)?"many":"other"},c.actor=function(){return"персонаж"},c.catActions=function(){return"Дії"},c.catControl=function(){return"Цикли"},c.catEvents=function(){return"Події"},c.catLogic=function(){return"Логіка"},c.catMath=function(){return"Математика"},c.catProcedures=function(){return"Функції"},c.catText=function(){return"Текст"},c.catVariables=function(){return"Змінні"},c.changeScoreTooltip=function(){return"Додати або видалити бал."},c.changeScoreTooltipK1=function(){return"Додати бал."},c.continue=function(){return"Далі"},c.decrementPlayerScore=function(){return"видалити бал"},c.defaultSayText=function(){return"Введіть тут"},c.emotion=function(){return"настрій"},c.finalLevel=function(){return"Вітання! Ви розв'язали останнє завдання."},c.hello=function(){return"привіт"},c.helloWorld=function(){return"Привіт, світе!"},c.incrementPlayerScore=function(){return"додати бал"},c.makeProjectileDisappear=function(){return"зникнути"},c.makeProjectileBounce=function(){return"відбитись"},c.makeProjectileBlueFireball=function(){return"зробити синю вогняну кулю"},c.makeProjectilePurpleFireball=function(){return"зробити фіолетову вогняну кулю"},c.makeProjectileRedFireball=function(){return"зробити червону вогняну кулю"},c.makeProjectileYellowHearts=function(){return"зробити жовті серця"},c.makeProjectilePurpleHearts=function(){return"зробити фіолетові серця"},c.makeProjectileRedHearts=function(){return"зробити червоні серця"},c.makeProjectileTooltip=function(){return"Змусити снаряд зникнути або відбитись при зіткненні."},c.makeYourOwn=function(){return"Створити власну історію"},c.moveDirectionDown=function(){return"вниз"},c.moveDirectionLeft=function(){return"ліворуч"},c.moveDirectionRight=function(){return"праворуч"},c.moveDirectionUp=function(){return"вгору"},c.moveDirectionRandom=function(){return"випадковий"},c.moveDistance25=function(){return"25 пікселів"},c.moveDistance50=function(){return"50 пікселів"},c.moveDistance100=function(){return"100 пікселів"},c.moveDistance200=function(){return"200 пікселів"},c.moveDistance400=function(){return"400 пікселів"},c.moveDistancePixels=function(){return"пікселі"},c.moveDistanceRandom=function(){return"Випадкові пікселі"},c.moveDistanceTooltip=function(){return"Переміщення персонажа на вказану відстань у вказаному напрямку."},c.moveSprite=function(){return"переміститись"},c.moveSpriteN=function(a){return"перемістити персонажа "+v(a,"spriteIndex")},c.moveDown=function(){return"рухатись вниз"},c.moveDownTooltip=function(){return"Перемістити персонаж вниз."},c.moveLeft=function(){return"рухатись ліворуч"},c.moveLeftTooltip=function(){return"Перемістити персонаж вліво."},c.moveRight=function(){return"рухатись праворуч"},c.moveRightTooltip=function(){return"Перемістити персонаж вправо."},c.moveUp=function(){return"рухатися вгору"},c.moveUpTooltip=function(){return"Рухати персонаж вгору."},c.moveTooltip=function(){return"Перемістити персонаж."},c.nextLevel=function(){return"Вітання! Ви розв'язали це завдання."},c.no=function(){return"Ні"},c.numBlocksNeeded=function(){return"Це завдання можна розв'язати за допомогою %1 блоків."},c.ouchExclamation=function(){return"Ой!"},c.playSoundCrunch=function(){return"грати звук хрускоту"},c.playSoundGoal1=function(){return"грати звук цілі 1"},c.playSoundGoal2=function(){return"грати звук цілі 2"},c.playSoundHit=function(){return"грати звук влучання"},c.playSoundLosePoint=function(){return"грати звук втрати балу"},c.playSoundLosePoint2=function(){return"грати звук втрати балу 2"},c.playSoundRetro=function(){return"грати звук ретро"},c.playSoundRubber=function(){return"грати звук гумки"},c.playSoundSlap=function(){return"грати звук ляпаса"},c.playSoundTooltip=function(){return"Відтворити обраний звук."},c.playSoundWinPoint=function(){return"грати звук переможного балу"},c.playSoundWinPoint2=function(){return"грати звук переможного балу 2"},c.playSoundWood=function(){return"грати звук деревини"},c.positionOutTopLeft=function(){return"до позиції вгору вліво"},c.positionOutTopRight=function(){return"до позиції вгору праворуч"},c.positionTopOutLeft=function(){return"до позиції вгору ззовні зліва"},c.positionTopLeft=function(){return"положення вгору ліворуч"},c.positionTopCenter=function(){return"положення вгору посередині"},c.positionTopRight=function(){return"положення вгору праворуч"},c.positionTopOutRight=function(){return"до позиції вгору ззовні справа"},c.positionMiddleLeft=function(){return"положення посередині зліва"},c.positionMiddleCenter=function(){return"положення посередині в центрі"},c.positionMiddleRight=function(){return"положення посередині праворуч"},c.positionBottomOutLeft=function(){return"до позиції вниз ззовні зліва"},c.positionBottomLeft=function(){return"положення внизу зліва"},c.positionBottomCenter=function(){return"положення внизу посередині"},c.positionBottomRight=function(){return"положення внизу справа"},c.positionBottomOutRight=function(){return"до позиції вниз ззовні справа"},c.positionOutBottomLeft=function(){return"до позиції вниз зліва"},c.positionOutBottomRight=function(){return"до позиції вниз справа"},c.positionRandom=function(){return"випадкове положення"},c.projectileBlueFireball=function(){return"синя вогняна куля"},c.projectilePurpleFireball=function(){return"фіолетова вогняна куля"},c.projectileRedFireball=function(){return"червона вогняна куля"},c.projectileYellowHearts=function(){return"жовті серця"},c.projectilePurpleHearts=function(){return"фіолетові серця"},c.projectileRedHearts=function(){return"червоні серця"},c.projectileRandom=function(){return"випадковий"},c.reinfFeedbackMsg=function(){return'Можна натиснути кнопку "Спробувати знову", щоб повернутися і пограти у свою гру.'},c.repeatForever=function(){return"повторювати завжди"},c.repeatDo=function(){return"робити"},c.repeatForeverTooltip=function(){return"Виконати дії з цього блоку кілька разів поки триває історія."},c.saySprite=function(){return"говорити"},c.saySpriteN=function(a){return"персонаж "+v(a,"spriteIndex")+" говорить"},c.saySpriteTooltip=function(){return"Показати бульбашку мовлення з відповідним текстом біля вказаного персонажу."},c.scoreText=function(a){return"Рахунок: "+v(a,"playerScore")},c.setBackground=function(){return"встановити тло"},c.setBackgroundRandom=function(){return"встановити випадкове тло"},c.setBackgroundBlack=function(){return"встановити чорне тло"},c.setBackgroundCave=function(){return"встановити тло печери"},c.setBackgroundCloudy=function(){return"встановити хмарне тло"},c.setBackgroundHardcourt=function(){return"встановити тло тенісного залу"},c.setBackgroundNight=function(){return"встановити нічне тло"},c.setBackgroundUnderwater=function(){return"встановити тло підводне"},c.setBackgroundCity=function(){return"встановити тло міста"},c.setBackgroundDesert=function(){return"встановити тло пустелі"},c.setBackgroundRainbow=function(){return"встановити тло веселки"},c.setBackgroundSoccer=function(){return"встановити тло футболу"},c.setBackgroundSpace=function(){return"встановити тло космосу"},c.setBackgroundTennis=function(){return"встановити тло тенісу"},c.setBackgroundWinter=function(){return"встановити тло зими"},c.setBackgroundTooltip=function(){return"Встановлює фонове зображення"},c.setScoreText=function(){return"встановити рахунок"},c.setScoreTextTooltip=function(){return"Задає текст, який буде відображатися в області балів."},c.setSpriteEmotionAngry=function(){return"до сердитого настрою"},c.setSpriteEmotionHappy=function(){return"до радісного настрою"},c.setSpriteEmotionNormal=function(){return"до нормального настрою"},c.setSpriteEmotionRandom=function(){return"до випадкового настрою"},c.setSpriteEmotionSad=function(){return"до сумного настрою"},c.setSpriteEmotionTooltip=function(){return"Встановлює настрій персонажа"},c.setSpriteAlien=function(){return"у зображення інопланетянина"},c.setSpriteBat=function(){return"у зображення кажана"},c.setSpriteBird=function(){return"у зображення птаха"},c.setSpriteCat=function(){return"у зображення кота"},c.setSpriteCaveBoy=function(){return"на зображення печерного хлопчика"},c.setSpriteCaveGirl=function(){return"на зображення печерної дівчинки"},c.setSpriteDinosaur=function(){return"у зображення динозавра"},c.setSpriteDog=function(){return"до зображення собаки"},c.setSpriteDragon=function(){return"до зображення дракона"},c.setSpriteGhost=function(){return"до зображення привида"},c.setSpriteHidden=function(){return"до прихованого зображення"},c.setSpriteHideK1=function(){return"приховати"},c.setSpriteKnight=function(){return"до зображення лицаря"},c.setSpriteMonster=function(){return"до зображення монстра"},c.setSpriteNinja=function(){return"до зображення ніндзя у масці"},c.setSpriteOctopus=function(){return"до зображення восьминога"},c.setSpritePenguin=function(){return"до зображення пінгвіна"},c.setSpritePirate=function(){return"до зображення пірата"},c.setSpritePrincess=function(){return"до зображення принцеси"},c.setSpriteRandom=function(){return"до випадкового зображення"},c.setSpriteRobot=function(){return"до зображення робота"},c.setSpriteShowK1=function(){return"показати"},c.setSpriteSpacebot=function(){return"до зображення космічного корабля"},c.setSpriteSoccerGirl=function(){return"на зображення дівчинки-футболістки"},c.setSpriteSoccerBoy=function(){return"на зображення хлопчика-футболіста"},c.setSpriteSquirrel=function(){return"до зображення білочки"},c.setSpriteTennisGirl=function(){return"на зображення дівчинки-тенісистки"},c.setSpriteTennisBoy=function(){return"на зображення хлопчика-тенісиста"},c.setSpriteUnicorn=function(){return"до зображення єдинорога"},c.setSpriteWitch=function(){return"до зображення відьми"},c.setSpriteWizard=function(){return"до зображення чарівника"},c.setSpritePositionTooltip=function(){return"Миттєво переміщує персонажа у вказане місце."},c.setSpriteK1Tooltip=function(){return"Показує або приховує вказаного персонажа."},c.setSpriteTooltip=function(){return"Встановлює зображення персонажа"},c.setSpriteSizeRandom=function(){return"до випадкового розміру"},c.setSpriteSizeVerySmall=function(){return"до дуже малого розміру"},c.setSpriteSizeSmall=function(){return"до малого розміру"},c.setSpriteSizeNormal=function(){return"до звичайного розміру"},c.setSpriteSizeLarge=function(){return"до великого розміру"},c.setSpriteSizeVeryLarge=function(){return"до дуже великого розміру"},c.setSpriteSizeTooltip=function(){return"Встановлює розмір персонажа"},c.setSpriteSpeedRandom=function(){return"до випадкової швидкості"},c.setSpriteSpeedVerySlow=function(){return"до дуже повільної швидкості"},c.setSpriteSpeedSlow=function(){return"до повільної швидкості"},c.setSpriteSpeedNormal=function(){return"до нормальної швидкості"},c.setSpriteSpeedFast=function(){return"до високої швидкості"},c.setSpriteSpeedVeryFast=function(){return"до дуже високої швидкості"},c.setSpriteSpeedTooltip=function(){return"Встановлює швидкість персонажа"},c.setSpriteZombie=function(){return"до зображення зомбі"},c.shareStudioTwitter=function(){return"Подивіться на гру, яку я зробив! Я написав її сам разом з @codeorg"},c.shareGame=function(){return"Поділися своєю історією:"},c.showTitleScreen=function(){return"показати титульний екран"},c.showTitleScreenTitle=function(){return"назва"},c.showTitleScreenText=function(){return"текст"},c.showTSDefTitle=function(){return"надрукуйте тут заголовок"},c.showTSDefText=function(){return"надрукуйте тут текст"},c.showTitleScreenTooltip=function(){return"Показати титульний екран з відповідним заголовком і текстом."},c.setSprite=function(){return"встановити"},c.setSpriteN=function(a){return"встановити персонажа "+v(a,"spriteIndex")},c.soundCrunch=function(){return"хрускіт"},c.soundGoal1=function(){return"ціль 1"},c.soundGoal2=function(){return"ціль 2"},c.soundHit=function(){return"удар"},c.soundLosePoint=function(){return"втрата балу"},c.soundLosePoint2=function(){return"втрата балу 2"},c.soundRetro=function(){return"ретро"},c.soundRubber=function(){return"гума"},c.soundSlap=function(){return"ляпас"},c.soundWinPoint=function(){return"виграшний бал"},c.soundWinPoint2=function(){return"виграшний бал 2"},c.soundWood=function(){return"дерево"},c.speed=function(){return"швидкість"},c.stopSprite=function(){return"зупинити"},c.stopSpriteN=function(a){return"зупинити персонажа "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Зупинити рух персонажа."},c.throwSprite=function(){return"кидати"},c.throwSpriteN=function(a){return"персонаж "+v(a,"spriteIndex")+" кидає"},c.throwTooltip=function(){return"Кидати снаряд від вказаного актора."},c.vanish=function(){return"зникнути"},c.vanishActorN=function(a){return"зникнути персонажу "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Персонаж зникає."},c.waitFor=function(){return"чекати на"},c.waitSeconds=function(){return"секунди"},c.waitForClick=function(){return"чекати на клік"},c.waitForRandom=function(){return"чекати випадковий час"},c.waitForHalfSecond=function(){return"чекати півсекунди"},c.waitFor1Second=function(){return"чекати 1 секунду"},c.waitFor2Seconds=function(){return"чекати 2 секунди"},c.waitFor5Seconds=function(){return"чекати 5 секунд"},c.waitFor10Seconds=function(){return"чекати 10 секунд"},c.waitParamsTooltip=function(){return"Очікування заданої кількості секунд або задайте нуль, щоб чекати, поки не відбудеться клік."},c.waitTooltip=function(){return"Очікувати визначений період часу, або до клацання."},c.whenArrowDown=function(){return"стрілка вниз"},c.whenArrowLeft=function(){return"стрілка ліворуч"},c.whenArrowRight=function(){return"стрілка праворуч"},c.whenArrowUp=function(){return"стрілка вгору"},c.whenArrowTooltip=function(){return"Виконання дій, поданих нижче, коли натиснута відповідна клавіша стрілки."},c.whenDown=function(){return"коли стрілка вниз"},c.whenDownTooltip=function(){return"Виконати дії, подані нижче, при натисненні клавіші стрілка вниз."},c.whenGameStarts=function(){return"коли історія починається"},c.whenGameStartsTooltip=function(){return"Виконання дій, поданих нижче, коли історія починається."},c.whenLeft=function(){return"коли стрілка вліво"},c.whenLeftTooltip=function(){return"Виконати дії, подані нижче, при натисненні клавіші стрілка вліво."},c.whenRight=function(){return"коли стрілка вправо"},c.whenRightTooltip=function(){return"Виконати дії, подані нижче, при натисненні клавіші стрілка вправо."},c.whenSpriteClicked=function(){return"коли персонаж клацнули"},c.whenSpriteClickedN=function(a){return"коли клацнули персонажа "+v(a,"spriteIndex")},c.whenSpriteClickedTooltip=function(){return"Виконати дії, подані нижче, коли клацнули персонаж."},c.whenSpriteCollidedN=function(a){return"коли персонаж "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Виконати дії, подані нижче, коли персонаж торкається іншого персонажу."},c.whenSpriteCollidedWith=function(){return"торкається"},c.whenSpriteCollidedWithN=function(a){return"торкається персонажа "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"торкається синьої вогняної кулі"},c.whenSpriteCollidedWithPurpleFireball=function(){return"торкається фіолетової вогняної кулі"},c.whenSpriteCollidedWithRedFireball=function(){return"торкається червоної вогняної кулі"},c.whenSpriteCollidedWithYellowHearts=function(){return"торкається жовтих сердець"},c.whenSpriteCollidedWithPurpleHearts=function(){return"торкається фіолетових сердець"},c.whenSpriteCollidedWithRedHearts=function(){return"торкається червоних сердець"},c.whenSpriteCollidedWithBottomEdge=function(){return"торкається нижнього краю"},c.whenSpriteCollidedWithLeftEdge=function(){return"торкається лівого краю"},c.whenSpriteCollidedWithRightEdge=function(){return"торкається правого краю"},c.whenSpriteCollidedWithTopEdge=function(){return"торкається верхнього краю"},c.whenUp=function(){return"коли стрілка вгору"},c.whenUpTooltip=function(){return"Виконати дії, подані нижче, при натисненні клавіші стрілка вгору."},c.yes=function(){return"Так"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring"); d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/ur_pk/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/ur_pk/common":40,"../../locale/ur_pk/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/ur_pk/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/ur_pk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/ur_pk/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/ur_pk/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/ur_pk/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/ur_pk/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.ur=function(a){return 1===a?"one":"other"},c.and=function(){return"اور"},c.blocklyMessage=function(){return"Blockly"},c.catActions=function(){return"Actions"},c.catColour=function(){return"Colour"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Lists"},c.catLoops=function(){return"Loops"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.codeTooltip=function(){return"See generated JavaScript code."},c.continue=function(){return"Continue"},c.dialogCancel=function(){return"Cancel"},c.dialogOK=function(){return"OK"},c.directionNorthLetter=function(){return"N"},c.directionSouthLetter=function(){return"S"},c.directionEastLetter=function(){return"E"},c.directionWestLetter=function(){return"W"},c.end=function(){return"end"},c.emptyBlocksErrorMsg=function(){return'The "Repeat" or "If" block needs to have other blocks inside it to work. Make sure the inner block fits properly inside the containing block.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"You have extra blocks that aren't attached to an event block."},c.finalStage=function(){return"Congratulations! You have completed the final stage."},c.finalStageTrophies=function(a){return"Congratulations! You have completed the final stage and won "+p(a,"numTrophies",0,"ur",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(){return"The blocks for your program can also be represented in JavaScript, the world's most widely adopted programming language:"},c.hashError=function(){return"Sorry, '%1' doesn't correspond with any saved program."},c.help=function(){return"Help"},c.hintTitle=function(){return"Hint:"},c.jump=function(){return"jump"},c.levelIncompleteError=function(){return"You are using all of the necessary types of blocks but not in the right way."},c.listVariable=function(){return"list"},c.makeYourOwnFlappy=function(){return"Make Your Own Flappy Game"},c.missingBlocksErrorMsg=function(){return"Try one or more of the blocks below to solve this puzzle."},c.nextLevel=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+" and won "+p(a,"numTrophies",0,"ur",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.nextStage=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+"."},c.nextStageTrophies=function(a){return"Congratulations! You completed Stage "+v(a,"stageNumber")+" and won "+p(a,"numTrophies",0,"ur",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"." },c.numBlocksNeeded=function(a){return"Congratulations! You completed Puzzle "+v(a,"puzzleNumber")+". (However, you could have used only "+p(a,"numBlocks",0,"ur",{one:"1 block",other:n(a,"numBlocks")+" blocks"})+".)"},c.numLinesOfCodeWritten=function(a){return"You just wrote "+p(a,"numLines",0,"ur",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code!"},c.play=function(){return"play"},c.puzzleTitle=function(a){return"Puzzle "+v(a,"puzzle_number")+" of "+v(a,"stage_total")},c.repeat=function(){return"دوبارہ"},c.resetProgram=function(){return"Reset"},c.runProgram=function(){return"Run Program"},c.runTooltip=function(){return"Run the program defined by the blocks in the workspace."},c.score=function(){return"score"},c.showCodeHeader=function(){return"Show Code"},c.showGeneratedCode=function(){return"Show code"},c.subtitle=function(){return"a visual programming environment"},c.textVariable=function(){return"text"},c.tooFewBlocksMsg=function(){return"You are using all of the necessary types of blocks, but try using more of these types of blocks to complete this puzzle."},c.tooManyBlocksMsg=function(){return"This puzzle can be solved with blocks."},c.tooMuchWork=function(){return"You made me do a lot of work! Could you try repeating fewer times?"},c.toolboxHeader=function(){return"Blocks"},c.openWorkspace=function(){return"How It Works"},c.totalNumLinesOfCodeWritten=function(a){return"All-time total: "+p(a,"numLines",0,"ur",{one:"1 line",other:n(a,"numLines")+" lines"})+" of code."},c.tryAgain=function(){return"Try again"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"Back to previous level"},c.saveToGallery=function(){return"Save to your gallery"},c.savedToGallery=function(){return"Saved to your gallery!"},c.typeCode=function(){return"Type your JavaScript code below these instructions."},c.typeFuncs=function(){return"Available functions:%1"},c.typeHint=function(){return"Note that the parentheses and semicolons are required."},c.workspaceHeader=function(){return"Assemble your blocks here: "},c.infinity=function(){return"Infinity"},c.rotateText=function(){return"Rotate your device."},c.orientationLock=function(){return"Turn off orientation lock in device settings."},c.wantToLearn=function(){return"Want to learn to code?"},c.watchVideo=function(){return"Watch the Video"},c.when=function(){return"when"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"Try the Hour of Code"},c.signup=function(){return"Sign up for the intro course"},c.hintHeader=function(){return"Here's a tip:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.ur=function(a){return 1===a?"one":"other"},c.actor=function(){return"actor"},c.catActions=function(){return"Actions"},c.catControl=function(){return"Loops"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Math"},c.catProcedures=function(){return"Functions"},c.catText=function(){return"Text"},c.catVariables=function(){return"Variables"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Continue"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Congratulations! You have solved the final puzzle."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"increment player score"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"بےترتیب"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"pixels"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"move down"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"move left"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"move right"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"move up"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Congratulations! You have completed this puzzle."},c.no=function(){return"No"},c.numBlocksNeeded=function(){return"This puzzle can be solved with %1 blocks."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return"play crunch sound"},c.playSoundGoal1=function(){return"play goal 1 sound"},c.playSoundGoal2=function(){return"play goal 2 sound"},c.playSoundHit=function(){return"play hit sound"},c.playSoundLosePoint=function(){return"play lose point sound"},c.playSoundLosePoint2=function(){return"play lose point 2 sound"},c.playSoundRetro=function(){return"play retro sound"},c.playSoundRubber=function(){return"play rubber sound"},c.playSoundSlap=function(){return"play slap sound"},c.playSoundTooltip=function(){return"Play a sound."},c.playSoundWinPoint=function(){return"play win point sound"},c.playSoundWinPoint2=function(){return"play win point 2 sound"},c.playSoundWood=function(){return"play wood sound"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"بےترتیب"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"do"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Score: "+v(a,"playerScore")+" : "+v(a,"opponentScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Sets the background image"},c.setScoreText=function(){return"set score"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"text"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"set"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"crunch"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"when Down arrow"},c.whenDownTooltip=function(){return"Execute the actions below when the Down arrow button is pressed."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"when Left arrow"},c.whenLeftTooltip=function(){return"Execute the actions below when the Left arrow button is pressed."},c.whenRight=function(){return"when Right arrow"},c.whenRightTooltip=function(){return"Execute the actions below when the Right arrow button is pressed."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"when Up arrow"},c.whenUpTooltip=function(){return"Execute the actions below when the Up arrow button is pressed."},c.yes=function(){return"Yes"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||""; var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/vi_vn/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/vi_vn/common":40,"../../locale/vi_vn/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/vi_vn/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/vi_vn/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/vi_vn/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/vi_vn/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/vi_vn/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/vi_vn/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.vi=function(){return"other"},c.and=function(){return"và"},c.blocklyMessage=function(){return"Mảnh ghép"},c.catActions=function(){return"hành động"},c.catColour=function(){return"màu sắc"},c.catLogic=function(){return"Logic"},c.catLists=function(){return"Danh sách"},c.catLoops=function(){return"Vòng lặp"},c.catMath=function(){return"Thuật toán"},c.catProcedures=function(){return"Chức năng"},c.catText=function(){return"văn bản"},c.catVariables=function(){return"Các biến"},c.codeTooltip=function(){return'Xem mã "JavaScript" đã được tạo ra.'},c.continue=function(){return"Tiếp tục"},c.dialogCancel=function(){return"Huỷ"},c.dialogOK=function(){return"Đồng ý"},c.directionNorthLetter=function(){return"Bắc"},c.directionSouthLetter=function(){return"Nam"},c.directionEastLetter=function(){return"Đông"},c.directionWestLetter=function(){return"Tây"},c.end=function(){return"kết thúc"},c.emptyBlocksErrorMsg=function(){return'Miếng ghép được "Lặp lại" hay "Nếu" cần có những miếng ghép bên trong để hoạt động. Đảm bảo là miếng gạch đó khớp hoàn toàn phần ở trong của miếng gạch kia.'},c.emptyFunctionBlocksErrorMsg=function(){return"Chức năng của block cần phải có block khác bên trong để khiến nó hoạt động."},c.extraTopBlocks=function(){return"Bạn có khối phụ không gắn liền với một sự kiện khối."},c.finalStage=function(){return"Chúc mừng. Bạn vừa hoàn thành xong bước cuối cùng."},c.finalStageTrophies=function(a){return"Chúc mừng! Bạn vừa hoàn thành bước cuối cùng và dành danh hiệu. "+v(a,"numTrophies")+" nhiều."},c.finish=function(){return"Hoàn Thành"},c.generatedCodeInfo=function(a){return"Ngay cả các trường đại học giảng dạy dựa trên block- mã hóa (ví dụ: "+v(a,"berkeleyLink")+" "+v(a,"harvardLink")+"). Tuy nhiên, dưới mui xe, các khối bạn đã lắp ráp có thể cũng được hiển thị trong JavaScript, phần lớn của thế giới rộng rãi sử dụng mã hóa ngôn ngữ:"},c.hashError=function(){return"Xin lỗi, '%1' không tương ứng với bất kì chương trình đã lưu."},c.help=function(){return"Trợ Giúp"},c.hintTitle=function(){return"Gợi ý:"},c.jump=function(){return"nhảy/cú nhảy"},c.levelIncompleteError=function(){return"Bạn đã dùng tất cả các khối cần thiết, nhưng không đúng cách."},c.listVariable=function(){return"danh sách"},c.makeYourOwnFlappy=function(){return"Tạo lấy một bản Flappy Bird của riêng bạn"},c.missingBlocksErrorMsg=function(){return"Thử dùng một hoặc nhiều khối bên dưới để giải quyết trò này."},c.nextLevel=function(a){return"Chúc mừng! Bạn đã hoàn thành trò số "+v(a,"puzzleNumber")+"."},c.nextLevelTrophies=function(a){return"Chúc mừng! Bạn đã hoàn thành Câu đố "+v(a,"puzzleNumber")+" và chiến thắng "+v(a,"numTrophies")+"."},c.nextStage=function(a){return"Chúc mừng! Bạn đã hoàn thành xong "+v(a,"stageName")+"."},c.nextStageTrophies=function(a){return"Chúc mừng! Bạn đã vượt qua vòng "+v(a,"stageNumber")+" và giành được "+p(a,"numTrophies",0,"vi",{one:"một danh hiệu",other:n(a,"numTrophies")+" danh hiệu"})+"." },c.numBlocksNeeded=function(a){return"Chúc mừng! Bạn đã hoàn thành câu đố "+v(a,"puzzleNumber")+". Nhưng bạn thật sự chỉ cần "+v(a,"numBlocks")+" khối thôi ."},c.numLinesOfCodeWritten=function(a){return"Bạn vừa mới viết "+p(a,"numLines",0,"vi",{one:"1 dòng",other:n(a,"numLines")+" dòng"})+" mã!"},c.play=function(){return"Bắt đầu chơi"},c.puzzleTitle=function(a){return"Câu đố thứ "+v(a,"puzzle_number")+" trong số "+v(a,"stage_total")+" câu"},c.repeat=function(){return"lặp lại"},c.resetProgram=function(){return"Thiết lập lại"},c.runProgram=function(){return"Chạy"},c.runTooltip=function(){return"Chạy chương trình được thiết kế bởi các khối lệnh trong khung làm việc."},c.score=function(){return"Ghi điểm/điểm số"},c.showCodeHeader=function(){return"Xem mã"},c.showGeneratedCode=function(){return"Xem mã"},c.subtitle=function(){return"một môi trường lập trình trực quan"},c.textVariable=function(){return"văn bản"},c.tooFewBlocksMsg=function(){return"Bạn đang sử dụng tất cả các loại khối lệnh cần thiết, nhưng hãy thử sử dụng các loại khối lệnh khác để hoàn thành câu đố."},c.tooManyBlocksMsg=function(){return"Câu đố này có thể được giải quyết với khối lệnh."},c.tooMuchWork=function(){return"Bạn làm tôi phải làm quá nhiều việc! Bạn làm ơn thử làm cho nó ít hơn được không?"},c.toolboxHeader=function(){return"Các khối lệnh"},c.openWorkspace=function(){return"Hoạt động ra sao"},c.totalNumLinesOfCodeWritten=function(a){return"Thời gian tổng cộng: "+p(a,"numLines",0,"vi",{one:"1 dòng",other:n(a,"numLines")+" dòng"})+" của mã chương trình."},c.tryAgain=function(){return"Thử lại"},c.hintRequest=function(){return"Xem gợi ý"},c.backToPreviousLevel=function(){return"Chơi lại màn trước"},c.saveToGallery=function(){return"Lưu vào thư viện của bạn"},c.savedToGallery=function(){return"Lưu vào thư viện của bạn!"},c.typeCode=function(){return"Nhập mã JavaScript của bạn theo hướng dẫn bên dưới."},c.typeFuncs=function(){return"Các hàm có sẵn:%1"},c.typeHint=function(){return"Lưu ý rằng dấu ngoặc đơn và dấu chấm phẩy là bắt buộc."},c.workspaceHeader=function(){return"Lắp ráp các khối của bạn ở đây: "},c.infinity=function(){return"Vô cùng"},c.rotateText=function(){return"Xoay thiết bị của bạn."},c.orientationLock=function(){return"Tắt khóa hướng trong cài đặt thiết bị."},c.wantToLearn=function(){return"Bạn muốn học lập trình?"},c.watchVideo=function(){return"Xem Video"},c.when=function(){return"Khi nào"},c.whenRun=function(){return"Khi chạy"},c.tryHOC=function(){return"Học thử Hour of Code"},c.signup=function(){return"Đăng ký cho khóa học mở đầu"},c.hintHeader=function(){return"Đây là một số mẹo:"},c.genericFeedback=function(){return"Nhìn xem bằng cách nào bạn kết thúc và hãy cố gắng sửa chương trình của bạn."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.vi=function(){return"other"},c.actor=function(){return"actor"},c.catActions=function(){return"hành động"},c.catControl=function(){return"Vòng lặp"},c.catEvents=function(){return"Events"},c.catLogic=function(){return"Logic"},c.catMath=function(){return"Thuật toán"},c.catProcedures=function(){return"Hàm số"},c.catText=function(){return"văn bản"},c.catVariables=function(){return"Các biến"},c.changeScoreTooltip=function(){return"Add or remove a point to the score."},c.changeScoreTooltipK1=function(){return"Add a point to the score."},c.continue=function(){return"Tiếp tục"},c.decrementPlayerScore=function(){return"remove point"},c.defaultSayText=function(){return"type here"},c.emotion=function(){return"mood"},c.finalLevel=function(){return"Chúc mừng! Bạn đã giải quyết các câu đố cuối cùng."},c.hello=function(){return"hello"},c.helloWorld=function(){return"Hello World!"},c.incrementPlayerScore=function(){return"điểm"},c.makeProjectileDisappear=function(){return"disappear"},c.makeProjectileBounce=function(){return"bounce"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"Make the projectile that just collided disappear or bounce."},c.makeYourOwn=function(){return"Make Your Own Story"},c.moveDirectionDown=function(){return"down"},c.moveDirectionLeft=function(){return"left"},c.moveDirectionRight=function(){return"right"},c.moveDirectionUp=function(){return"up"},c.moveDirectionRandom=function(){return"bất kỳ"},c.moveDistance25=function(){return"25 pixels"},c.moveDistance50=function(){return"50 pixels"},c.moveDistance100=function(){return"100 pixels"},c.moveDistance200=function(){return"200 pixels"},c.moveDistance400=function(){return"400 pixels"},c.moveDistancePixels=function(){return"các điểm ảnh"},c.moveDistanceRandom=function(){return"random pixels"},c.moveDistanceTooltip=function(){return"Move a character a specific distance in the specified direction."},c.moveSprite=function(){return"move"},c.moveSpriteN=function(a){return"move actor "+v(a,"spriteIndex")},c.moveDown=function(){return"di chuyển xuống"},c.moveDownTooltip=function(){return"Move the paddle down."},c.moveLeft=function(){return"qua trái"},c.moveLeftTooltip=function(){return"Move the paddle to the left."},c.moveRight=function(){return"qua phải"},c.moveRightTooltip=function(){return"Move the paddle to the right."},c.moveUp=function(){return"di chuyển lên"},c.moveUpTooltip=function(){return"Move the paddle up."},c.moveTooltip=function(){return"Move a character."},c.nextLevel=function(){return"Chúc mừng! Bạn đã hoàn thành câu đố này."},c.no=function(){return"Không"},c.numBlocksNeeded=function(){return"Câu đố này có thể được giải quyết với %1 khối."},c.ouchExclamation=function(){return"Ouch!"},c.playSoundCrunch=function(){return'Phát âm thanh "lạo xạo"'},c.playSoundGoal1=function(){return"phát âm thanh ghi bàn 1"},c.playSoundGoal2=function(){return"phát âm thanh ghi bàn 2"},c.playSoundHit=function(){return"phát âm thanh va chạm"},c.playSoundLosePoint=function(){return"phát âm thanh mất điểm"},c.playSoundLosePoint2=function(){return"phát âm thanh mất điểm 2"},c.playSoundRetro=function(){return"phát âm thanh retro"},c.playSoundRubber=function(){return"phát âm thanh cao su"},c.playSoundSlap=function(){return"phát âm thanh slap"},c.playSoundTooltip=function(){return"Phát âm thanh tự chọn."},c.playSoundWinPoint=function(){return"phát âm thanh giành chiến thắng 1 điểm"},c.playSoundWinPoint2=function(){return"phát âm thanh giành chiến thắng 2 điểm"},c.playSoundWood=function(){return"phát âm thanh gỗ"},c.positionOutTopLeft=function(){return"to the above top left position"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"to the bottom center position"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"to the random position"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"bất kỳ"},c.reinfFeedbackMsg=function(){return'You can press the "Try again" button to go back to playing your story.'},c.repeatForever=function(){return"repeat forever"},c.repeatDo=function(){return"thực hiện"},c.repeatForeverTooltip=function(){return"Execute the actions in this block repeatedly while the story is running."},c.saySprite=function(){return"say"},c.saySpriteN=function(a){return"actor "+v(a,"spriteIndex")+" say"},c.saySpriteTooltip=function(){return"Pop up a speech bubble with the associated text from the specified character."},c.scoreText=function(a){return"Điểm: "+v(a,"playerScore")},c.setBackground=function(){return"set background"},c.setBackgroundRandom=function(){return"set random scene"},c.setBackgroundBlack=function(){return"set black background"},c.setBackgroundCave=function(){return"set cave background"},c.setBackgroundCloudy=function(){return"set cloudy background"},c.setBackgroundHardcourt=function(){return"set hardcourt scene"},c.setBackgroundNight=function(){return"set night background"},c.setBackgroundUnderwater=function(){return"set underwater background"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"Thiết lập hình nền"},c.setScoreText=function(){return"thiết lập điểm"},c.setScoreTextTooltip=function(){return"Sets the text to be displayed in the score area."},c.setSpriteEmotionAngry=function(){return"to a angry emotion"},c.setSpriteEmotionHappy=function(){return"to a happy emotion"},c.setSpriteEmotionNormal=function(){return"to a normal emotion"},c.setSpriteEmotionRandom=function(){return"to a random emotion"},c.setSpriteEmotionSad=function(){return"to a sad emotion"},c.setSpriteEmotionTooltip=function(){return"Sets the actor emotion"},c.setSpriteAlien=function(){return"to an alien image"},c.setSpriteBat=function(){return"to a bat image"},c.setSpriteBird=function(){return"to a bird image"},c.setSpriteCat=function(){return"to a cat image"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"to a dinosaur image"},c.setSpriteDog=function(){return"to a dog image"},c.setSpriteDragon=function(){return"to a dragon image"},c.setSpriteGhost=function(){return"to a ghost image"},c.setSpriteHidden=function(){return"to a hidden image"},c.setSpriteHideK1=function(){return"hide"},c.setSpriteKnight=function(){return"to a knight image"},c.setSpriteMonster=function(){return"to a monster image"},c.setSpriteNinja=function(){return"to a masked ninja image"},c.setSpriteOctopus=function(){return"to an octopus image"},c.setSpritePenguin=function(){return"to a penguin image"},c.setSpritePirate=function(){return"to a pirate image"},c.setSpritePrincess=function(){return"to a princess image"},c.setSpriteRandom=function(){return"to a random image"},c.setSpriteRobot=function(){return"to a robot image"},c.setSpriteShowK1=function(){return"show"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"to a squirrel image"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"to a unicorn image"},c.setSpriteWitch=function(){return"to a witch image"},c.setSpriteWizard=function(){return"to a wizard image"},c.setSpritePositionTooltip=function(){return"Instantly moves an actor to the specified location."},c.setSpriteK1Tooltip=function(){return"Shows or hides the specified actor."},c.setSpriteTooltip=function(){return"Sets the character image"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"to a random speed"},c.setSpriteSpeedVerySlow=function(){return"to a very slow speed"},c.setSpriteSpeedSlow=function(){return"to a slow speed"},c.setSpriteSpeedNormal=function(){return"to a normal speed"},c.setSpriteSpeedFast=function(){return"to a fast speed"},c.setSpriteSpeedVeryFast=function(){return"to a very fast speed"},c.setSpriteSpeedTooltip=function(){return"Sets the speed of a character"},c.setSpriteZombie=function(){return"to a zombie image"},c.shareStudioTwitter=function(){return"Check out the story I made. I wrote it myself with @codeorg"},c.shareGame=function(){return"Share your story:"},c.showTitleScreen=function(){return"show title screen"},c.showTitleScreenTitle=function(){return"title"},c.showTitleScreenText=function(){return"văn bản"},c.showTSDefTitle=function(){return"type title here"},c.showTSDefText=function(){return"type text here"},c.showTitleScreenTooltip=function(){return"Show a title screen with the associated title and text."},c.setSprite=function(){return"đặt thành tố"},c.setSpriteN=function(a){return"set actor "+v(a,"spriteIndex")},c.soundCrunch=function(){return"khủng hoảng"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"stop"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"Stops an actor's movement."},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"wait for"},c.waitSeconds=function(){return"seconds"},c.waitForClick=function(){return"wait for click"},c.waitForRandom=function(){return"wait for random"},c.waitForHalfSecond=function(){return"wait for a half second"},c.waitFor1Second=function(){return"wait for 1 second"},c.waitFor2Seconds=function(){return"wait for 2 seconds"},c.waitFor5Seconds=function(){return"wait for 5 seconds"},c.waitFor10Seconds=function(){return"wait for 10 seconds"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"Waits for a specified amount of time or until a click occurs."},c.whenArrowDown=function(){return"down arrow"},c.whenArrowLeft=function(){return"left arrow"},c.whenArrowRight=function(){return"right arrow"},c.whenArrowUp=function(){return"up arrow"},c.whenArrowTooltip=function(){return"Execute the actions below when the specified arrow key is pressed."},c.whenDown=function(){return"Khi mũi tên chỉ xuống"},c.whenDownTooltip=function(){return"Thực hiện các thao tác dưới đây khi chìa khoá mũi tên chỉ xuống bật."},c.whenGameStarts=function(){return"when game starts"},c.whenGameStartsTooltip=function(){return"Execute the actions below when the game starts."},c.whenLeft=function(){return"Khi mũi tên chỉ bên trái"},c.whenLeftTooltip=function(){return"Thực hiện các thao tác dưới đây khi chìa khoá mũi tên chỉ bên trái bật."},c.whenRight=function(){return"Khi mũi tên chỉ bên phải"},c.whenRightTooltip=function(){return"Thực hiện các thao tác dưới đây khi chìa khoá mũi tên chỉ bên phải bật."},c.whenSpriteClicked=function(){return"when actor clicked"},c.whenSpriteClickedN=function(a){return"when actor "+v(a,"spriteIndex")+" clicked"},c.whenSpriteClickedTooltip=function(){return"Execute the actions below when a character is clicked."},c.whenSpriteCollidedN=function(a){return"when actor "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"Execute the actions below when a character touches another character."},c.whenSpriteCollidedWith=function(){return"touches"},c.whenSpriteCollidedWithN=function(a){return"touches actor "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"touches bottom edge"},c.whenSpriteCollidedWithLeftEdge=function(){return"touches left edge"},c.whenSpriteCollidedWithRightEdge=function(){return"touches right edge"},c.whenSpriteCollidedWithTopEdge=function(){return"touches top edge"},c.whenUp=function(){return"Khi mũi tên chỉ lên trên"},c.whenUpTooltip=function(){return"Thực hiện các thao tác dưới đây khi chìa khoá mũi tên chỉ lên bật."},c.yes=function(){return"Có"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1; for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/zh_cn/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/zh_cn/common":40,"../../locale/zh_cn/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/zh_cn/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/zh_cn/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/zh_cn/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/zh_cn/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_cn/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_cn/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.zh=function(){return"other"},c.and=function(){return"和"},c.blocklyMessage=function(){return"模块化"},c.catActions=function(){return"操作"},c.catColour=function(){return"颜色"},c.catLogic=function(){return"逻辑"},c.catLists=function(){return"列表"},c.catLoops=function(){return"循环"},c.catMath=function(){return"数学"},c.catProcedures=function(){return"函数"},c.catText=function(){return"文本"},c.catVariables=function(){return"变量"},c.codeTooltip=function(){return"请参见所生成的 JavaScript 代码。"},c.continue=function(){return"继续"},c.dialogCancel=function(){return"取消"},c.dialogOK=function(){return"确定"},c.directionNorthLetter=function(){return"北"},c.directionSouthLetter=function(){return"南"},c.directionEastLetter=function(){return"东"},c.directionWestLetter=function(){return"西"},c.end=function(){return"结束"},c.emptyBlocksErrorMsg=function(){return"“Repeat”或“If”模块需要其他的模块充填在里面才能工作。请确保在容器模块里填入了合适的模块。"},c.emptyFunctionBlocksErrorMsg=function(){return"这个函数块,需要有其他块在里面才能工作"},c.extraTopBlocks=function(){return"你有多余的块,这些块没有附加到任何的事件块。"},c.finalStage=function(){return"祝贺你 !您已完成最后一章。"},c.finalStageTrophies=function(a){return"祝贺你 !已完成最终章并赢得了 "+p(a,"numTrophies",0,"zh",{one:"1个奖杯",other:n(a,"numTrophies")+" 奖杯"})+"。"},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return"即使是顶级的大学教授基于块的编码(如。"+v(a,"berkeleyLink")+","+v(a,"harvardLink")+")。但是,你组装的模块也可以显示在JavaScript中,世界上最广泛使用的编程语言:\n"},c.hashError=function(){return"对不起,'%1' 并不对应任何已保存的程序。"},c.help=function(){return"帮助"},c.hintTitle=function(){return"提示:"},c.jump=function(){return"跳转"},c.levelIncompleteError=function(){return"你虽然把所有必要的模块都用上了,但是使用方法不对。"},c.listVariable=function(){return"列表"},c.makeYourOwnFlappy=function(){return"制作你自己的Flappy游戏吧"},c.missingBlocksErrorMsg=function(){return"尝试下面一个或多个模块来解开这个谜题。"},c.nextLevel=function(a){return"祝贺你 !完成了谜题 "+v(a,"puzzleNumber")+"。"},c.nextLevelTrophies=function(a){return"祝贺你 !完成了谜题 "+v(a,"puzzleNumber")+",并且赢得了"+p(a,"numTrophies",0,"zh",{one:"1个奖杯",other:n(a,"numTrophies")+" 奖杯"})+"."},c.nextStage=function(a){return"祝贺你 !您完成了 "+v(a,"stageName")+"。"},c.nextStageTrophies=function(a){return"Congratulations! You completed "+v(a,"stageName")+" and won "+p(a,"numTrophies",0,"zh",{one:"a trophy",other:n(a,"numTrophies")+" trophies"})+"."},c.numBlocksNeeded=function(a){return"祝贺你 !完成了谜题 "+v(a,"puzzleNumber")+"。(然而,你其实可以只使用"+p(a,"numBlocks",0,"zh",{one:"1个模块",other:n(a,"numBlocks")+" 模块"})+"。)"},c.numLinesOfCodeWritten=function(a){return"你刚刚写了"+p(a,"numLines",0,"zh",{one:"1行",other:n(a,"numLines")+" 行"})+" 的代码 !"},c.play=function(){return"玩"},c.puzzleTitle=function(a){return"第"+v(a,"stage_total")+"章的谜题 "+v(a,"puzzle_number")+" "},c.repeat=function(){return"重复"},c.resetProgram=function(){return"重置"},c.runProgram=function(){return"运行"},c.runTooltip=function(){return"运行你在工作区里由各种模块组装出的程序。"},c.score=function(){return"得分" },c.showCodeHeader=function(){return"显示代码"},c.showGeneratedCode=function(){return"显示代码"},c.subtitle=function(){return"一个可视化的编程环境"},c.textVariable=function(){return"文本"},c.tooFewBlocksMsg=function(){return"您正在使用所有必要类型的模块,但请尝试更多这些类型的模块来完成这个谜题。"},c.tooManyBlocksMsg=function(){return"可以使用 < x id = 'START_SPAN' / > < x id = 'END_SPAN' / > 模块来解决这个谜题。"},c.tooMuchWork=function(){return"你让我多做很多工作 !你可以尝试少重复几次吗?"},c.toolboxHeader=function(){return"模块"},c.openWorkspace=function(){return"它是如何工作的?"},c.totalNumLinesOfCodeWritten=function(a){return"全程统计: "+p(a,"numLines",0,"zh",{one:"1 行",other:n(a,"numLines")+" 行"})+"代码。"},c.tryAgain=function(){return"再次尝试"},c.hintRequest=function(){return"看提示"},c.backToPreviousLevel=function(){return"返回到上一级"},c.saveToGallery=function(){return"保存到您的画廊"},c.savedToGallery=function(){return"保存到您的画面场景"},c.typeCode=function(){return"在这些说明下面输入您的 JavaScript代码。"},c.typeFuncs=function(){return"可用功能:%1"},c.typeHint=function(){return"注意圆括号和分号是需要的。"},c.workspaceHeader=function(){return"在这里组装你的模块:"},c.infinity=function(){return"无限"},c.rotateText=function(){return"旋转您的设备。"},c.orientationLock=function(){return"关闭设置中的旋转锁定。"},c.wantToLearn=function(){return"想要学习如何写代码吗?"},c.watchVideo=function(){return"观看视频"},c.when=function(){return"当"},c.whenRun=function(){return"当运行时"},c.tryHOC=function(){return"来试试”编程一小时“项目!"},c.signup=function(){return"注册账号后参加简介课程"},c.hintHeader=function(){return"这里有一个提示:"},c.genericFeedback=function(){return"看你的程序时如何结束的,并尝试修复你的程序"}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.zh=function(){return"other"},c.actor=function(){return"男演员"},c.catActions=function(){return"行为"},c.catControl=function(){return"循环"},c.catEvents=function(){return"事件"},c.catLogic=function(){return"逻辑"},c.catMath=function(){return"数学"},c.catProcedures=function(){return"函数"},c.catText=function(){return"文本"},c.catVariables=function(){return"变量"},c.changeScoreTooltip=function(){return"添加或移走一个得分点。"},c.changeScoreTooltipK1=function(){return"添加一个得分点。"},c.continue=function(){return"继续"},c.decrementPlayerScore=function(){return"移动点"},c.defaultSayText=function(){return"在此处键入"},c.emotion=function(){return"心情"},c.finalLevel=function(){return"恭喜你!你完成了最后一个难题。"},c.hello=function(){return"你好"},c.helloWorld=function(){return"世界 您好!"},c.incrementPlayerScore=function(){return"得分点"},c.makeProjectileDisappear=function(){return"消失"},c.makeProjectileBounce=function(){return"反弹"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"使只是相撞的弹丸消失或反弹。"},c.makeYourOwn=function(){return"制作自己的故事"},c.moveDirectionDown=function(){return"向下"},c.moveDirectionLeft=function(){return"向左"},c.moveDirectionRight=function(){return"向右"},c.moveDirectionUp=function(){return"向上"},c.moveDirectionRandom=function(){return"随机"},c.moveDistance25=function(){return"25 像素"},c.moveDistance50=function(){return"50像素"},c.moveDistance100=function(){return"100像素"},c.moveDistance200=function(){return"200像素"},c.moveDistance400=function(){return"400像素"},c.moveDistancePixels=function(){return"像素"},c.moveDistanceRandom=function(){return"随机像素"},c.moveDistanceTooltip=function(){return"在指定的方向上移动一个特定的距离。"},c.moveSprite=function(){return"移动"},c.moveSpriteN=function(a){return"移动演员 "+v(a,"spriteIndex")},c.moveDown=function(){return"向下移动"},c.moveDownTooltip=function(){return"向下移动一个小人。"},c.moveLeft=function(){return"向左移动"},c.moveLeftTooltip=function(){return"向左移动一个小人。"},c.moveRight=function(){return"向右移动"},c.moveRightTooltip=function(){return"向右移动一个小人。"},c.moveUp=function(){return"向上移动"},c.moveUpTooltip=function(){return"向上移动一个小人。"},c.moveTooltip=function(){return"移动一个小人。"},c.nextLevel=function(){return"恭喜你!你解决了这个谜题。"},c.no=function(){return"不"},c.numBlocksNeeded=function(){return"这个谜题可以用%1个块解决。"},c.ouchExclamation=function(){return"哎哟 !"},c.playSoundCrunch=function(){return"播放吱嘎声"},c.playSoundGoal1=function(){return"播放目标 1 声音"},c.playSoundGoal2=function(){return"播放目标 2 的声音"},c.playSoundHit=function(){return"播放命中的声音"},c.playSoundLosePoint=function(){return"播放失去点数的声音"},c.playSoundLosePoint2=function(){return"播放失去点数2的声音"},c.playSoundRetro=function(){return"播放复古的声音。"},c.playSoundRubber=function(){return"播放橡胶的声音"},c.playSoundSlap=function(){return"播放巴掌的声音"},c.playSoundTooltip=function(){return"播放所选声音"},c.playSoundWinPoint=function(){return"播放赢得点数的声音"},c.playSoundWinPoint2=function(){return"播放赢得点数的声音2"},c.playSoundWood=function(){return"播放木的声音"},c.positionOutTopLeft=function(){return"到上述左上角的位置"},c.positionOutTopRight=function(){return"到上述右上角的位置"},c.positionTopOutLeft=function(){return"到左外侧顶部的位置"},c.positionTopLeft=function(){return"到顶部的左边位置"},c.positionTopCenter=function(){return"到顶部的中心位置"},c.positionTopRight=function(){return"到顶部的右边位置"},c.positionTopOutRight=function(){return"到右外侧顶部的位置"},c.positionMiddleLeft=function(){return"到中间的左边位置"},c.positionMiddleCenter=function(){return"到中间的中心位置"},c.positionMiddleRight=function(){return"到中间的右边位置"},c.positionBottomOutLeft=function(){return"到左外侧底部的位置"},c.positionBottomLeft=function(){return"到底部的左边位置"},c.positionBottomCenter=function(){return"到底部的中心位置"},c.positionBottomRight=function(){return"到底部的右边位置"},c.positionBottomOutRight=function(){return"到右外侧底部的位置"},c.positionOutBottomLeft=function(){return"到左侧底部下面的位置"},c.positionOutBottomRight=function(){return"到右侧底部下面的位置"},c.positionRandom=function(){return"到一个随机位置"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"随机"},c.reinfFeedbackMsg=function(){return"你可以按“重试”按钮来返回你的游戏"},c.repeatForever=function(){return"一直重复下去"},c.repeatDo=function(){return"做"},c.repeatForeverTooltip=function(){return"当故事在进行时,在此块中反复执行这个动作。"},c.saySprite=function(){return"说"},c.saySpriteN=function(a){return"演员"+v(a,"spriteIndex")+" 说"},c.saySpriteTooltip=function(){return"从特定的小人上弹出文字气泡,表达它说的话。"},c.scoreText=function(a){return"得分: "+v(a,"playerScore")},c.setBackground=function(){return"设置背景"},c.setBackgroundRandom=function(){return"设置随机背景"},c.setBackgroundBlack=function(){return"设置黑色背景"},c.setBackgroundCave=function(){return"设置洞穴的背景"},c.setBackgroundCloudy=function(){return"设置多云背景"},c.setBackgroundHardcourt=function(){return"设置硬地背景"},c.setBackgroundNight=function(){return"设置的夜背景"},c.setBackgroundUnderwater=function(){return"设置水下背景"},c.setBackgroundCity=function(){return"设置的城市背景"},c.setBackgroundDesert=function(){return"设置沙漠背景"},c.setBackgroundRainbow=function(){return"设置彩虹背景"},c.setBackgroundSoccer=function(){return"设置足球背景"},c.setBackgroundSpace=function(){return"设置空地背景"},c.setBackgroundTennis=function(){return"设置网球背景"},c.setBackgroundWinter=function(){return"设置冬天背景"},c.setBackgroundTooltip=function(){return"设置背景图案"},c.setScoreText=function(){return"设置得分"},c.setScoreTextTooltip=function(){return"设置得分区域中显示的文本。"},c.setSpriteEmotionAngry=function(){return"对愤怒的心情"},c.setSpriteEmotionHappy=function(){return"对快乐的心情"},c.setSpriteEmotionNormal=function(){return"对正常的心情"},c.setSpriteEmotionRandom=function(){return"对随机的心情"},c.setSpriteEmotionSad=function(){return"对伤心的心情"},c.setSpriteEmotionTooltip=function(){return"设置演员心情"},c.setSpriteAlien=function(){return"到外形人图片"},c.setSpriteBat=function(){return"出现一只蝙蝠的形象"},c.setSpriteBird=function(){return"出现一只鸟的形象"},c.setSpriteCat=function(){return"出现一只猫的形象"},c.setSpriteCaveBoy=function(){return"到山洞男孩图片"},c.setSpriteCaveGirl=function(){return"到山洞女孩图片"},c.setSpriteDinosaur=function(){return"出现一只恐龙的形象"},c.setSpriteDog=function(){return"出现一只狗的形象"},c.setSpriteDragon=function(){return"出现一条龙的形象"},c.setSpriteGhost=function(){return"到鬼魂图片"},c.setSpriteHidden=function(){return"到一个隐藏的图像\n"},c.setSpriteHideK1=function(){return"隐藏"},c.setSpriteKnight=function(){return"到骑士图片"},c.setSpriteMonster=function(){return"到怪物图片"},c.setSpriteNinja=function(){return"到蒙面忍者图片"},c.setSpriteOctopus=function(){return"出现一张八达通的图像"},c.setSpritePenguin=function(){return"出现一只企鹅的形象"},c.setSpritePirate=function(){return"到海盗图片"},c.setSpritePrincess=function(){return"到公主图片"},c.setSpriteRandom=function(){return"到一个随机的图像"},c.setSpriteRobot=function(){return"到机器人图片"},c.setSpriteShowK1=function(){return"显示"},c.setSpriteSpacebot=function(){return"到空间机器人图片"},c.setSpriteSoccerGirl=function(){return"到足球女孩图片"},c.setSpriteSoccerBoy=function(){return"到足球女孩图片"},c.setSpriteSquirrel=function(){return"出现一只松鼠的形象"},c.setSpriteTennisGirl=function(){return"到网球女孩图片"},c.setSpriteTennisBoy=function(){return"到网球男孩图片"},c.setSpriteUnicorn=function(){return"到麒麟图片"},c.setSpriteWitch=function(){return"呈现女巫形象"},c.setSpriteWizard=function(){return"出现一个向导形象"},c.setSpritePositionTooltip=function(){return"立即将小人移动到指定的位置。"},c.setSpriteK1Tooltip=function(){return"显示或隐藏特定的演员。"},c.setSpriteTooltip=function(){return"设置小人形象"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"到一个随机的速度"},c.setSpriteSpeedVerySlow=function(){return"到一个非常慢的速度"},c.setSpriteSpeedSlow=function(){return"到一个较慢的速度"},c.setSpriteSpeedNormal=function(){return"到一个普通的速度"},c.setSpriteSpeedFast=function(){return"到一个比较快的速度"},c.setSpriteSpeedVeryFast=function(){return"到一个非常快的速度"},c.setSpriteSpeedTooltip=function(){return"设置小人的速度"},c.setSpriteZombie=function(){return"到僵尸图片"},c.shareStudioTwitter=function(){return"看看我的故事。我用@codeorg自己写的\n"},c.shareGame=function(){return"分享您的故事:"},c.showTitleScreen=function(){return"显示标题屏幕"},c.showTitleScreenTitle=function(){return"标题"},c.showTitleScreenText=function(){return"文本"},c.showTSDefTitle=function(){return"在此处键入标题"},c.showTSDefText=function(){return"在此处键入文本"},c.showTitleScreenTooltip=function(){return"在一个标题屏幕显示有关的标题和文本。"},c.setSprite=function(){return"设置"},c.setSpriteN=function(a){return"设置演员 "+v(a,"spriteIndex")},c.soundCrunch=function(){return"紧缩"},c.soundGoal1=function(){return"目标 1"},c.soundGoal2=function(){return"目标 2"},c.soundHit=function(){return"命中"},c.soundLosePoint=function(){return"丢分"},c.soundLosePoint2=function(){return"失去2分"},c.soundRetro=function(){return"复古"},c.soundRubber=function(){return"橡胶"},c.soundSlap=function(){return"一巴掌"},c.soundWinPoint=function(){return"赢得1分"},c.soundWinPoint2=function(){return"赢得2分"},c.soundWood=function(){return"木材"},c.speed=function(){return"速度"},c.stopSprite=function(){return"停止"},c.stopSpriteN=function(a){return"停止演员 "+v(a,"spriteIndex")},c.stopTooltip=function(){return"停止一个小人的运动。"},c.throwSprite=function(){return"抛出"},c.throwSpriteN=function(a){return"演员 "+v(a,"spriteIndex")+" 抛出"},c.throwTooltip=function(){return"从特定的演员抛出一个抛出物"},c.vanish=function(){return"消失"},c.vanishActorN=function(a){return"消失的演员 "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"等待"},c.waitSeconds=function(){return" 秒"},c.waitForClick=function(){return"等待点击"},c.waitForRandom=function(){return"随机等待"},c.waitForHalfSecond=function(){return"等待半秒"},c.waitFor1Second=function(){return"等待 1 秒"},c.waitFor2Seconds=function(){return"等待 2 秒"},c.waitFor5Seconds=function(){return"等待 5 秒"},c.waitFor10Seconds=function(){return"等待 10 秒"},c.waitParamsTooltip=function(){return"Waits for a specified number of seconds or use zero to wait until a click occurs."},c.waitTooltip=function(){return"等待指定的时间长度或直到发生点击"},c.whenArrowDown=function(){return"向下箭头键"},c.whenArrowLeft=function(){return"向左的箭头"},c.whenArrowRight=function(){return"向右箭头"},c.whenArrowUp=function(){return"向上箭头键"},c.whenArrowTooltip=function(){return"当指定的方向键按下时,执行下面的操作"},c.whenDown=function(){return"当箭头键向下"},c.whenDownTooltip=function(){return"执行下面按向上箭头键时采取的行动。"},c.whenGameStarts=function(){return"当故事开始的时候"},c.whenGameStartsTooltip=function(){return"执行下面这个故事开始的时候行动。"},c.whenLeft=function(){return"当箭头向左"},c.whenLeftTooltip=function(){return"执行下面按向左箭头键时采取的行动。"},c.whenRight=function(){return"当箭头向右"},c.whenRightTooltip=function(){return"执行下面按向右箭头键时采取的行动。"},c.whenSpriteClicked=function(){return"小人被点击时"},c.whenSpriteClickedN=function(a){return"演员 "+v(a,"spriteIndex")+" 被单击时"},c.whenSpriteClickedTooltip=function(){return"当小人被点击时,执行下面的动作。"},c.whenSpriteCollidedN=function(a){return"演员 "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"当一个小人触碰到另一个小人时,执行下面的动作。"},c.whenSpriteCollidedWith=function(){return"接近"},c.whenSpriteCollidedWithN=function(a){return"接近演员 "+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"接近地步边缘"},c.whenSpriteCollidedWithLeftEdge=function(){return"接近左边缘"},c.whenSpriteCollidedWithRightEdge=function(){return"接近有边缘"},c.whenSpriteCollidedWithTopEdge=function(){return"接近上边缘"},c.whenUp=function(){return"当箭头向上"},c.whenUpTooltip=function(){return"执行下面按向上箭头键时采取的行动。"},c.yes=function(){return"对"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e;else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c }if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;eBlocklyApps.IDEAL_BLOCK_NUM?i.TOO_MANY_BLOCKS_FAIL:i.ALL_PASS:BlocklyApps.IDEAL_BLOCK_NUM&&1/0!==BlocklyApps.IDEAL_BLOCK_NUM&&e'),k.titles){var l=Object.keys(k.titles);for(b=0;b',k.titles[c],"")}if(k.values){var m=Object.keys(k.values);for(b=0;b',k.values[c],"")}k.extra&&d.push(k.extra),d.push(""),(j+1)%i===0?(f+=h,e=0):e+=g}}return d.join("")}},{"../locale/zh_tw/common":40,"./codegen":6,"./constants":7,"./dom":8,"./templates/buttons.html":28,"./templates/code.html":29,"./templates/readonly.html":34,"./templates/sharing.html":35,"./templates/showCode.html":36,"./templates/trophy.html":37,"./utils":38}],10:[function(a,b){!function(a,c){"use strict";function d(){e.READY||(t.determineEventTypes(),s.each(e.gestures,function(a){v.register(a)}),t.onTouch(e.DOCUMENT,o,v.detect),t.onTouch(e.DOCUMENT,p,v.detect),e.READY=!0)}var e=function w(a,b){return new w.Instance(a,b||{})};e.VERSION="1.1.3",e.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},e.DOCUMENT=document,e.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,e.HAS_TOUCHEVENTS="ontouchstart"in a,e.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),e.NO_MOUSEEVENTS=e.HAS_TOUCHEVENTS&&e.IS_MOBILE||e.HAS_POINTEREVENTS,e.CALCULATE_INTERVAL=25;var f={},g=e.DIRECTION_DOWN="down",h=e.DIRECTION_LEFT="left",i=e.DIRECTION_UP="up",j=e.DIRECTION_RIGHT="right",k=e.POINTER_MOUSE="mouse",l=e.POINTER_TOUCH="touch",m=e.POINTER_PEN="pen",n=e.EVENT_START="start",o=e.EVENT_MOVE="move",p=e.EVENT_END="end",q=e.EVENT_RELEASE="release",r=e.EVENT_TOUCH="touch";e.READY=!1,e.plugins=e.plugins||{},e.gestures=e.gestures||{};var s=e.utils={extend:function(a,b,d){for(var e in b)!b.hasOwnProperty(e)||a[e]!==c&&d||(a[e]=b[e]);return a},on:function(a,b,c){a.addEventListener(b,c,!1)},off:function(a,b,c){a.removeEventListener(b,c,!1)},each:function(a,b,d){var e,f;if("forEach"in a)a.forEach(b,d);else if(a.length!==c){for(e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===!1)return}else for(e in a)if(a.hasOwnProperty(e)&&b.call(d,a[e],e,a)===!1)return},inStr:function(a,b){return a.indexOf(b)>-1},inArray:function(a,b){if(a.indexOf){var c=a.indexOf(b);return-1===c?!1:c}for(var d=0,e=a.length;e>d;d++)if(a[d]===b)return d;return!1},toArray:function(a){return Array.prototype.slice.call(a,0)},hasParent:function(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1},getCenter:function(a){var b=[],c=[],d=[],e=[],f=Math.min,g=Math.max;return 1===a.length?{pageX:a[0].pageX,pageY:a[0].pageY,clientX:a[0].clientX,clientY:a[0].clientY}:(s.each(a,function(a){b.push(a.pageX),c.push(a.pageY),d.push(a.clientX),e.push(a.clientY)}),{pageX:(f.apply(Math,b)+g.apply(Math,b))/2,pageY:(f.apply(Math,c)+g.apply(Math,c))/2,clientX:(f.apply(Math,d)+g.apply(Math,d))/2,clientY:(f.apply(Math,e)+g.apply(Math,e))/2})},getVelocity:function(a,b,c){return{x:Math.abs(b/a)||0,y:Math.abs(c/a)||0}},getAngle:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return 180*Math.atan2(d,c)/Math.PI},getDirection:function(a,b){var c=Math.abs(a.clientX-b.clientX),d=Math.abs(a.clientY-b.clientY);return c>=d?a.clientX-b.clientX>0?h:j:a.clientY-b.clientY>0?i:g},getDistance:function(a,b){var c=b.clientX-a.clientX,d=b.clientY-a.clientY;return Math.sqrt(c*c+d*d)},getScale:function(a,b){return a.length>=2&&b.length>=2?this.getDistance(b[0],b[1])/this.getDistance(a[0],a[1]):1},getRotation:function(a,b){return a.length>=2&&b.length>=2?this.getAngle(b[1],b[0])-this.getAngle(a[1],a[0]):0},isVertical:function(a){return a==i||a==g},setPrefixedCss:function(a,b,c,d){var e=["","Webkit","Moz","O","ms"];b=s.toCamelCase(b);for(var f=0;f0&&this.started&&(g=o),this.started=!0;var j=this.collectEventData(c,g,e,a);return b!=p&&d.call(v,j),h&&(j.changedLength=i,j.eventType=h,d.call(v,j),j.eventType=g,delete j.changedLength),g==p&&(d.call(v,j),this.started=!1),g},determineEventTypes:function(){var b;return b=e.HAS_POINTEREVENTS?a.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:e.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],f[n]=b[0],f[o]=b[1],f[p]=b[2],f},getTouchList:function(a,b){if(e.HAS_POINTEREVENTS)return u.getTouchList();if(a.touches){if(b==o)return a.touches;var c=[],d=[].concat(s.toArray(a.touches),s.toArray(a.changedTouches)),f=[];return s.each(d,function(a){s.inArray(c,a.identifier)===!1&&f.push(a),c.push(a.identifier)}),f}return a.identifier=1,[a]},collectEventData:function(a,b,c,d){var e=l;return s.inStr(d.type,"mouse")||u.matchType(k,d)?e=k:u.matchType(m,d)&&(e=m),{center:s.getCenter(c),timeStamp:Date.now(),target:d.target,touches:c,eventType:b,pointerType:e,srcEvent:d,preventDefault:function(){var a=this.srcEvent;a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return v.stopDetect()}}}},u=e.PointerEvent={pointers:{},getTouchList:function(){var a=[];return s.each(this.pointers,function(b){a.push(b)}),a},updatePointer:function(a,b){a==p?delete this.pointers[b.pointerId]:(b.identifier=b.pointerId,this.pointers[b.pointerId]=b)},matchType:function(a,b){if(!b.pointerType)return!1;var c=b.pointerType,d={};return d[k]=c===(b.MSPOINTER_TYPE_MOUSE||k),d[l]=c===(b.MSPOINTER_TYPE_TOUCH||l),d[m]=c===(b.MSPOINTER_TYPE_PEN||m),d[a]},reset:function(){this.pointers={}}},v=e.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(a,b){this.current||(this.stopped=!1,this.current={inst:a,startEvent:s.extend({},b),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(b))},detect:function(a){if(this.current&&!this.stopped){a=this.extendEventData(a);var b=this.current.inst,c=b.options;return s.each(this.gestures,function(d){!this.stopped&&b.enabled&&c[d.name]&&d.handler.call(d,a,b)},this),this.current&&(this.current.lastEvent=a),a.eventType==p&&this.stopDetect(),a}},stopDetect:function(){this.previous=s.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(a,b,c,d,f){var g=this.current,h=!1,i=g.lastCalcEvent,j=g.lastCalcData;i&&a.timeStamp-i.timeStamp>e.CALCULATE_INTERVAL&&(b=i.center,c=a.timeStamp-i.timeStamp,d=a.center.clientX-i.center.clientX,f=a.center.clientY-i.center.clientY,h=!0),(a.eventType==r||a.eventType==q)&&(g.futureCalcEvent=a),(!g.lastCalcEvent||h)&&(j.velocity=s.getVelocity(c,d,f),j.angle=s.getAngle(b,a.center),j.direction=s.getDirection(b,a.center),g.lastCalcEvent=g.futureCalcEvent||a,g.futureCalcEvent=a),a.velocityX=j.velocity.x,a.velocityY=j.velocity.y,a.interimAngle=j.angle,a.interimDirection=j.direction},extendEventData:function(a){var b=this.current,c=b.startEvent,d=b.lastEvent||c;(a.eventType==r||a.eventType==q)&&(c.touches=[],s.each(a.touches,function(a){c.touches.push({clientX:a.clientX,clientY:a.clientY})}));var e=a.timeStamp-c.timeStamp,f=a.center.clientX-c.center.clientX,g=a.center.clientY-c.center.clientY;return this.getCalculatedData(a,d.center,e,f,g),s.extend(a,{startEvent:c,deltaTime:e,deltaX:f,deltaY:g,distance:s.getDistance(c.center,a.center),angle:s.getAngle(c.center,a.center),direction:s.getDirection(c.center,a.center),scale:s.getScale(c.touches,a.touches),rotation:s.getRotation(c.touches,a.touches)}),a},register:function(a){var b=a.defaults||{};return b[a.name]===c&&(b[a.name]=!0),s.extend(e.defaults,b,!0),a.index=a.index||1e3,this.gestures.push(a),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}};e.Instance=function(a,b){var c=this;d(),this.element=a,this.enabled=!0,s.each(b,function(a,c){delete b[c],b[s.toCamelCase(c)]=a}),this.options=s.extend(s.extend({},e.defaults),b||{}),this.options.behavior&&s.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=t.onTouch(a,n,function(a){c.enabled&&a.eventType==n?v.startDetect(c,a):a.eventType==r&&v.detect(a)}),this.eventHandlers=[]},e.Instance.prototype={on:function(a,b){var c=this;return t.on(c.element,a,b,function(a){c.eventHandlers.push({gesture:a,handler:b})}),c},off:function(a,b){var c=this;return t.off(c.element,a,b,function(a){var d=s.inArray({gesture:a,handler:b});d!==!1&&c.eventHandlers.splice(d,1)}),c},trigger:function(a,b){b||(b={});var c=e.DOCUMENT.createEvent("Event");c.initEvent(a,!0,!0),c.gesture=b;var d=this.element;return s.hasParent(b.target,d)&&(d=b.target),d.dispatchEvent(c),this},enable:function(a){return this.enabled=a,this},dispose:function(){var a,b;for(s.toggleBehavior(this.element,this.options.behavior,!1),a=-1;b=this.eventHandlers[++a];)s.off(this.element,b.gesture,b.handler);return this.eventHandlers=[],t.off(this.element,f[n],this.eventStartHandler),null}},function(a){function b(b,d){var e=v.current;if(!(d.options.dragMaxTouches>0&&b.touches.length>d.options.dragMaxTouches))switch(b.eventType){case n:c=!1;break;case o:if(b.distance0)){var k=Math.abs(d.options.dragMinDistance/b.distance);f.pageX+=b.deltaX*k,f.pageY+=b.deltaY*k,f.clientX+=b.deltaX*k,f.clientY+=b.deltaY*k,b=v.extendEventData(b)}(e.lastEvent.dragLockToAxis||d.options.dragLockToAxis&&d.options.dragLockMinDistance<=b.distance)&&(b.dragLockToAxis=!0);var l=e.lastEvent.direction;b.dragLockToAxis&&l!==b.direction&&(b.direction=s.isVertical(l)?b.deltaY<0?i:g:b.deltaX<0?h:j),c||(d.trigger(a+"start",b),c=!0),d.trigger(a,b),d.trigger(a+b.direction,b);var m=s.isVertical(b.direction);(d.options.dragBlockVertical&&m||d.options.dragBlockHorizontal&&!m)&&b.preventDefault();break;case q:c&&b.changedLength<=d.options.dragMaxTouches&&(d.trigger(a+"end",b),c=!1);break;case p:c=!1}}var c=!1;e.gestures.Drag={name:a,index:50,handler:b,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),e.gestures.Gesture={name:"gesture",index:1337,handler:function(a,b){b.trigger(this.name,a)}},function(a){function b(b,d){var e=d.options,f=v.current;switch(b.eventType){case n:clearTimeout(c),f.name=a,c=setTimeout(function(){f&&f.name==a&&d.trigger(a,b)},e.holdTimeout);break;case o:b.distance>e.holdThreshold&&clearTimeout(c);break;case q:clearTimeout(c)}}var c;e.gestures.Hold={name:a,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:b}}("hold"),e.gestures.Release={name:"release",index:1/0,handler:function(a,b){a.eventType==q&&b.trigger(this.name,a)}},e.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(a,b){if(a.eventType==q){var c=a.touches.length,d=b.options;if(cd.swipeMaxTouches)return;(a.velocityX>d.swipeVelocityX||a.velocityY>d.swipeVelocityY)&&(b.trigger(this.name,a),b.trigger(this.name+a.direction,a))}}},function(a){function b(b,d){var e,f,g=d.options,h=v.current,i=v.previous;switch(b.eventType){case n:c=!1;break;case o:c=c||b.distance>g.tapMaxDistance;break;case p:!s.inStr(b.srcEvent.type,"cancel")&&b.deltaTimed.options.transformMinRotation&&d.trigger("rotate",b),e>d.options.transformMinScale&&(d.trigger("pinch",b),d.trigger("pinch"+(b.scale<1?"in":"out"),b));break;case q:c&&b.changedLength<2&&(d.trigger(a+"end",b),c=!1)}}var c=!1;e.gestures.Transform={name:a,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:b}}("transform"),"function"==typeof define&&define.amd?define(function(){return e}):"undefined"!=typeof b&&b.exports?b.exports=e:a.Hammer=e}(window)},{}],11:[function(a,b,c){(function(a){(function(){function d(a,b,c){for(var d=(c||0)-1,e=a?a.length:0;++d-1?0:-1:a?0:-1}function f(a){var b=this.cache,c=typeof a;if("boolean"==c||null==a)b[a]=!0;else{"number"!=c&&"string"!=c&&(c="object");var d="number"==c?a:ib+a,e=b[c]||(b[c]={});"object"==c?(e[d]||(e[d]=[])).push(a):e[d]=!0}}function g(a){var b=-1,c=a.length,d=a[0],e=a[c/2|0],g=a[c-1];if(d&&"object"==typeof d&&e&&"object"==typeof e&&g&&"object"==typeof g)return!1;var h=i();h["false"]=h["null"]=h["true"]=h.undefined=!1;var j=i();for(j.array=a,j.cache=h,j.push=f;++be?0:e);++d=jb&&f===d,j=[];if(i){var k=g(b);k?(f=e,b=k):i=!1}for(;++c-1:void 0});return e.pop(),f.pop(),s&&(j(e),j(f)),g}function w(a,b){return a+Nb(Zb()*(b-a+1))}function x(a,b,c,d,e,f){var g=1&b,h=2&b,i=4&b,j=16&b,k=32&b;if(!h&&!F(a))throw new TypeError;j&&!c.length&&(b&=-17,j=c=!1),k&&!d.length&&(b&=-33,k=d=!1);var l=a&&a.__bindData__;if(l&&l!==!0)return l=m(l),l[2]&&(l[2]=m(l[2])),l[3]&&(l[3]=m(l[3])),!g||1&l[1]||(l[4]=e),!g&&1&l[1]&&(b|=8),!i||4&l[1]||(l[5]=f),j&&Qb.apply(l[2]||(l[2]=[]),c),k&&Sb.apply(l[3]||(l[3]=[]),d),l[1]|=b,x.apply(null,l);var n=1==b||17===b?p:s;return n([a,b,c,d,e,f])}function y(){zb.shadowedProps=nb,zb.array=zb.bottom=zb.loop=zb.top="",zb.init="iterable",zb.useHas=!0;for(var a,b=0;a=arguments[b];b++)for(var c in a)zb[c]=a[c];var d=zb.args;zb.firstArg=/^[^,]+/.exec(d)[0];var e=Function("baseCreateCallback, errorClass, errorProto, hasOwnProperty, indicatorObject, isArguments, isArray, isString, keys, objectProto, objectTypes, nonEnumProps, stringClass, stringProto, toString","return function("+d+") {\n"+ac(zb)+"\n}");return e(r,sb,Hb,Pb,hb,B,cc,H,zb.keys,Ib,Ab,$b,xb,Jb,Kb)}function z(){var a=(a=n.indexOf)===Q?d:a;return a}function A(a){return"function"==typeof a&&Lb.test(a)}function B(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==ob||!1}function C(a,b){var c=q(a);return b?jc(c,b):c}function D(a){var b=[];return kc(a,function(a,c){F(a)&&b.push(c)}),b.sort()}function E(a){var b=!0;if(!a)return b;var c=Kb.call(a),d=a.length;return c==pb||c==xb||(_b.argsClass?c==ob:B(a))||c==vb&&"number"==typeof d&&F(a.splice)?!d:(lc(a,function(){return b=!1}),b)}function F(a){return"function"==typeof a}function G(a){return!(!a||!Ab[typeof a])}function H(a){return"string"==typeof a||a&&"object"==typeof a&&Kb.call(a)==xb||!1}function I(a){for(var b=-1,c=ec(a),d=c.length,e=Array(d);++bc?Xb(0,e+c):c||0}else if(c){var f=S(a,b);return a[f]===b?f:-1}return d(a,b,c)}function R(a,b,c){a=+a||0,c="number"==typeof c?c:+c||1,null==b&&(b=a,a=0);for(var d=-1,e=Xb(0,Mb((b-a)/(c||1))),f=Array(e);++de;){var g=e+f>>>1;c(a[g])2?x(a,17,m(arguments,2),null,b):x(a,1,null,null,b)}function V(a,b,c){var d,e,f,g,h,i,j,k=0,l=!1,m=!0;if(!F(a))throw new TypeError;if(b=Xb(0,b)||0,c===!0){var n=!0;m=!1}else G(c)&&(n=c.leading,l="maxWait"in c&&(Xb(b,c.maxWait)||0),m="trailing"in c?c.trailing:m);var o=function(){var c=b-(mc()-g);if(0>=c){e&&clearTimeout(e);var l=j;e=i=j=eb,l&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))}else i=setTimeout(o,c)},p=function(){i&&clearTimeout(i),e=i=j=eb,(m||l!==b)&&(k=mc(),f=a.apply(h,d),i||e||(d=h=null))};return function(){if(d=arguments,g=mc(),h=this,j=m&&(i||!n),l===!1)var c=n&&!i;else{e||n||(k=g);var q=l-(g-k),r=0>=q;r?(e&&(e=clearTimeout(e)),k=g,f=a.apply(h,d)):e||(e=setTimeout(p,q))}return r&&i?i=clearTimeout(i):i||b===l||(i=setTimeout(o,b)),c&&(r=!0,f=a.apply(h,d)),!r||i||e||(d=h=null),f}}function W(a,b){return x(b,16,[a])}function X(a,b,c){var d=typeof a;if(null==a||"function"==d)return r(a,b,c);if("object"!=d)return _(a);var e=ec(a),f=e[0],g=a[f];return 1!=e.length||g!==g||G(g)?function(b){for(var c=e.length,d=!1;c--&&(d=v(b[e[c]],a[e[c]],null,!0)););return d}:function(a){var b=a[f];return g===b&&(0!==g||1/g==1/b)}}function Y(a){return a}function Z(a,b,c){var d=!0,e=b&&D(b);b&&(c||e.length)||(null==c&&(c=b),f=o,b=a,a=n,e=D(b)),c===!1?d=!1:G(c)&&"chain"in c&&(d=c.chain);var f=a,g=F(f);K(e,function(c){var e=a[c]=b[c];g&&(f.prototype[c]=function(){var b=this.__chain__,c=this.__wrapped__,g=[c];Qb.apply(g,arguments);var h=e.apply(a,g);if(d||b){if(c===h&&G(h))return this;h=new f(h),h.__chain__=b}return h})})}function $(){}function _(a){return function(b){return b[a]}}function ab(a){return a=new o(a),a.__chain__=!0,a}function bb(){return this.__chain__=!0,this}function cb(){return String(this.__wrapped__)}function db(){return this.__wrapped__}var eb,fb=[],gb=[],hb={},ib=+new Date+"",jb=75,kb=40,lb=/^\s*function[ \n\r\t]+\w/,mb=/\bthis\b/,nb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],ob="[object Arguments]",pb="[object Array]",qb="[object Boolean]",rb="[object Date]",sb="[object Error]",tb="[object Function]",ub="[object Number]",vb="[object Object]",wb="[object RegExp]",xb="[object String]",yb={configurable:!1,enumerable:!1,value:null,writable:!1},zb={args:"",array:null,bottom:"",firstArg:"",init:"",keys:null,loop:"",shadowedProps:null,support:null,top:"",useHas:!1},Ab={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Bb=Ab[typeof window]&&window||this,Cb=Ab[typeof c]&&c&&!c.nodeType&&c,Db=Ab[typeof b]&&b&&!b.nodeType&&b,Eb=Db&&Db.exports===Cb&&Cb,Fb=Ab[typeof a]&&a;!Fb||Fb.global!==Fb&&Fb.window!==Fb||(Bb=Fb);var Gb=[],Hb=Error.prototype,Ib=Object.prototype,Jb=String.prototype,Kb=Ib.toString,Lb=RegExp("^"+String(Kb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),Mb=Math.ceil,Nb=Math.floor,Ob=Function.prototype.toString,Pb=Ib.hasOwnProperty,Qb=Gb.push,Rb=Ib.propertyIsEnumerable,Sb=Gb.unshift,Tb=function(){try{var a={},b=A(b=Object.defineProperty)&&b,c=b(a,a,a)&&b}catch(d){}return c}(),Ub=A(Ub=Object.create)&&Ub,Vb=A(Vb=Array.isArray)&&Vb,Wb=A(Wb=Object.keys)&&Wb,Xb=Math.max,Yb=Math.min,Zb=Math.random,$b={};$b[pb]=$b[rb]=$b[ub]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},$b[qb]=$b[xb]={constructor:!0,toString:!0,valueOf:!0},$b[sb]=$b[tb]=$b[wb]={constructor:!0,toString:!0},$b[vb]={constructor:!0},function(){for(var a=nb.length;a--;){var b=nb[a];for(var c in $b)Pb.call($b,c)&&!Pb.call($b[c],b)&&($b[c][b]=!1)}}(),o.prototype=n.prototype;var _b=n.support={};!function(){var a=function(){this.x=1},b={0:1,length:1},c=[];a.prototype={valueOf:1,y:1};for(var d in new a)c.push(d);for(d in arguments);_b.argsClass=Kb.call(arguments)==ob,_b.argsObject=arguments.constructor==Object&&!(arguments instanceof Array),_b.enumErrorProps=Rb.call(Hb,"message")||Rb.call(Hb,"name"),_b.enumPrototypes=Rb.call(a,"prototype"),_b.funcDecomp=!A(Bb.WinRTError)&&mb.test(function(){return this}),_b.funcNames="string"==typeof Function.name,_b.nonEnumArgs=0!=d,_b.nonEnumShadows=!/valueOf/.test(c),_b.spliceObjects=(Gb.splice.call(b,0,1),!b[0]),_b.unindexedChars="x"[0]+Object("x")[0]!="xx"}(1);var ac=function(a){var b="var index, iterable = "+a.firstArg+", result = "+a.init+";\nif (!iterable) return result;\n"+a.top+";";a.array?(b+="\nvar length = iterable.length; index = -1;\nif ("+a.array+") { ",_b.unindexedChars&&(b+="\n if (isString(iterable)) {\n iterable = iterable.split('')\n } "),b+="\n while (++index < length) {\n "+a.loop+";\n }\n}\nelse { "):_b.nonEnumArgs&&(b+="\n var length = iterable.length; index = -1;\n if (length && isArguments(iterable)) {\n while (++index < length) {\n index += '';\n "+a.loop+";\n }\n } else { "),_b.enumPrototypes&&(b+="\n var skipProto = typeof iterable == 'function';\n "),_b.enumErrorProps&&(b+="\n var skipErrorProps = iterable === errorProto || iterable instanceof Error;\n ");var c=[];if(_b.enumPrototypes&&c.push('!(skipProto && index == "prototype")'),_b.enumErrorProps&&c.push('!(skipErrorProps && (index == "message" || index == "name"))'),a.useHas&&a.keys)b+="\n var ownIndex = -1,\n ownProps = objectTypes[typeof iterable] && keys(iterable),\n length = ownProps ? ownProps.length : 0;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n",c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ";else if(b+="\n for (index in iterable) {\n",a.useHas&&c.push("hasOwnProperty.call(iterable, index)"),c.length&&(b+=" if ("+c.join(" && ")+") {\n "),b+=a.loop+"; ",c.length&&(b+="\n }"),b+="\n } ",_b.nonEnumShadows){for(b+="\n\n if (iterable !== objectProto) {\n var ctor = iterable.constructor,\n isProto = iterable === (ctor && ctor.prototype),\n className = iterable === stringProto ? stringClass : iterable === errorProto ? errorClass : toString.call(iterable),\n nonEnum = nonEnumProps[className];\n ",k=0;7>k;k++)b+="\n index = '"+a.shadowedProps[k]+"';\n if ((!(isProto && nonEnum[index]) && hasOwnProperty.call(iterable, index))",a.useHas||(b+=" || (!nonEnum[index] && iterable[index] !== objectProto[index])"),b+=") {\n "+a.loop+";\n } ";b+="\n } "}return(a.array||_b.nonEnumArgs)&&(b+="\n}"),b+=a.bottom+";\nreturn result"};Ub||(q=function(){function a(){}return function(b){if(G(b)){a.prototype=b;var c=new a;a.prototype=null}return c||Bb.Object()}}());var bc=Tb?function(a,b){yb.value=b,Tb(a,"__bindData__",yb)}:$;_b.argsClass||(B=function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Pb.call(a,"callee")&&!Rb.call(a,"callee")||!1});var cc=Vb||function(a){return a&&"object"==typeof a&&"number"==typeof a.length&&Kb.call(a)==pb||!1},dc=y({args:"object",init:"[]",top:"if (!(objectTypes[typeof object])) return result",loop:"result.push(index)"}),ec=Wb?function(a){return G(a)?_b.enumPrototypes&&"function"==typeof a||_b.nonEnumArgs&&a.length&&B(a)?dc(a):Wb(a):[]}:dc,fc={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3)",array:"typeof length == 'number'",keys:ec,loop:"if (callback(iterable[index], index, collection) === false) return result"},gc={args:"object, source, guard",top:"var args = arguments,\n argsIndex = 0,\n argsLength = typeof guard == 'number' ? 2 : args.length;\nwhile (++argsIndex < argsLength) {\n iterable = args[argsIndex];\n if (iterable && objectTypes[typeof iterable]) {",keys:ec,loop:"if (typeof result[index] == 'undefined') result[index] = iterable[index]",bottom:" }\n}"},hc={top:"if (!objectTypes[typeof iterable]) return result;\n"+fc.top,array:!1},ic=y(fc),jc=y(gc,{top:gc.top.replace(";",";\nif (argsLength > 3 && typeof args[argsLength - 2] == 'function') {\n var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);\n} else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {\n callback = args[--argsLength];\n}"),loop:"result[index] = callback ? callback(result[index], iterable[index]) : iterable[index]"}),kc=y(fc,hc,{useHas:!1}),lc=y(fc,hc);F(/x/)&&(F=function(a){return"function"==typeof a&&Kb.call(a)==tb});var mc=A(mc=Date.now)&&mc||function(){return(new Date).getTime()};n.assign=jc,n.bind=U,n.chain=ab,n.create=C,n.createCallback=X,n.debounce=V,n.filter=J,n.flatten=P,n.forEach=K,n.forIn=kc,n.forOwn=lc,n.functions=D,n.keys=ec,n.map=L,n.property=_,n.range=R,n.reject=M,n.shuffle=O,n.values=I,n.without=T,n.wrap=W,n.collect=L,n.each=K,n.extend=jc,n.methods=D,n.select=J,Z(n),n.identity=Y,n.indexOf=Q,n.isArguments=B,n.isArray=cc,n.isEmpty=E,n.isFunction=F,n.isObject=G,n.isString=H,n.mixin=Z,n.noop=$,n.now=mc,n.sortedIndex=S,Z(function(){var a={}; return lc(n,function(b,c){n.prototype[c]||(a[c]=b)}),a}(),!1),n.sample=N,lc(n,function(a,b){var c="sample"!==b;n.prototype[b]||(n.prototype[b]=function(b,d){var e=this.__chain__,f=a(this.__wrapped__,b,d);return e||null!=b&&(!d||c&&"function"==typeof b)?new o(f,e):f})}),n.VERSION="2.4.1",n.prototype.chain=bb,n.prototype.toString=cb,n.prototype.value=db,n.prototype.valueOf=db,ic(["join","pop","shift"],function(a){var b=Gb[a];n.prototype[a]=function(){var a=this.__chain__,c=b.apply(this.__wrapped__,arguments);return a?new o(c,a):c}}),ic(["push","reverse","sort","unshift"],function(a){var b=Gb[a];n.prototype[a]=function(){return b.apply(this.__wrapped__,arguments),this}}),ic(["concat","slice","splice"],function(a){var b=Gb[a];n.prototype[a]=function(){return new o(b.apply(this.__wrapped__,arguments),this.__chain__)}}),_b.spliceObjects||ic(["pop","shift","splice"],function(a){var b=Gb[a],c="splice"==a;n.prototype[a]=function(){var a=this.__chain__,d=this.__wrapped__,e=b.apply(d,arguments);return 0===d.length&&delete d[0],a||c?new o(e,a):e}}),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Bb._=n,define(function(){return n})):Cb&&Db?Eb?(Db.exports=n)._=n:Cb._=n:Bb._=n}).call(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],12:[function(a,b,c){function d(a){return{test:function(b){var c=Blockly.Xml.blockToDom_(b,!0);return f(a,c)},blockDisplayXML:i.serialize(a)}}function e(a){var b,c=[],e=a.getElementsByTagName("statement")[0],f=e.getElementsByTagName("block")[0];do b=f.getElementsByTagName("next")[0],b&&f.removeChild(b),c.push(d(f)),b&&(f=b.getElementsByTagName("block")[0]);while(b);return c}function f(a,b){return a instanceof Element&&b instanceof Element?a.tagName.toLowerCase()!==b.tagName.toLowerCase()?!1:g(a,b)&&h(a,b)?!0:!1:a instanceof Text&&"???"===a.textContent?!0:a.isEqualNode(b)}function g(a,b){var c=j.reject(a.attributes,k.contains),d=j.reject(b.attributes,k.contains);if(c.length!==d.length)return!1;for(var e=0;e'+a+""},c.simpleBlock=function(a){return{test:function(b){return b.type==a},type:a}},c.repeat=function(a){return{test:function(a){return"controls_repeat"==a.type},type:"controls_repeat",titles:{TIMES:a}}},c.repeatSimpleBlock=function(a){return{test:function(a){return"controls_repeat_simplified"==a.type},type:"controls_repeat_simplified",titles:{TIMES:a}}},c.makeTestsFromBuilderRequiredBlocks=function(a){var b=i.parseElement(a),c=[];return Array.prototype.forEach.call(b.childNodes,function(a){1===a.nodeType&&c.push("pick_one"===a.getAttribute("type")?e(a):[d(a)])}),c};var k=["deletable","movable","editable","inline"];k.contains=function(a){return-1!==k.indexOf(a.name)},c.blocksMatch=function(a,b){var d=a.type===b.type,e=c.blockTitlesMatch(a,b);return d&&e},c.blockTitlesMatch=function(a,b){var c=a.getTitles(),d=b.getTitles(),e=function(a,b){return a.name1?this.appendDummyInput().appendTitle(c(f.whenSpriteClickedN),"SPRITE"):this.appendDummyInput().appendTitle(f.whenSpriteClicked()),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteClickedTooltip())}},A.studio_whenSpriteClicked=A.studio_eventHandlerPrologue,a.Blocks.studio_whenSpriteCollided={helpUrl:"",init:function(){var b,e;if(this.setHSV(140,1,.74),z)b=h(),e=h(),this.appendDummyInput().appendTitle(g.when()).appendTitle(new a.FieldImage(y.collide)).appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(g.and()).appendTitle(e,"SPRITE2");else{b=c(f.whenSpriteCollidedN);var i=d(f.whenSpriteCollidedWithN);u&&(i=i.concat(this.PROJECTILES)),v&&(i=i.concat(this.EDGES)),e=new a.FieldDropdown(i),this.appendDummyInput().appendTitle(b,"SPRITE1"),this.appendDummyInput().appendTitle(e,"SPRITE2")}t>1&&e.setValue(e.getOptions()[1][1]),this.setPreviousStatement(!1),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.whenSpriteCollidedTooltip())}},a.Blocks.studio_whenSpriteCollided.PROJECTILES=[[f.whenSpriteCollidedWithBlueFireball(),"blue_fireball"],[f.whenSpriteCollidedWithPurpleFireball(),"purple_fireball"],[f.whenSpriteCollidedWithRedFireball(),"red_fireball"],[f.whenSpriteCollidedWithYellowHearts(),"yellow_hearts"],[f.whenSpriteCollidedWithPurpleHearts(),"purple_hearts"],[f.whenSpriteCollidedWithRedHearts(),"red_hearts"]],a.Blocks.studio_whenSpriteCollided.EDGES=[[f.whenSpriteCollidedWithTopEdge(),"top"],[f.whenSpriteCollidedWithLeftEdge(),"left"],[f.whenSpriteCollidedWithBottomEdge(),"bottom"],[f.whenSpriteCollidedWithRightEdge(),"right"]],A.studio_whenSpriteCollided=A.studio_eventHandlerPrologue,a.Blocks.studio_stop={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.stopSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.stopSprite()),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.stopTooltip())}},A.studio_stop=function(){return"Studio.stop('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+");\n"},a.Blocks.studio_throw={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.throwSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.throwSprite()),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.throwTooltip())}},a.Blocks.studio_throw.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],a.Blocks.studio_throw.VALUES=[[f.projectileBlueFireball(),'"blue_fireball"'],[f.projectilePurpleFireball(),'"purple_fireball"'],[f.projectileRedFireball(),'"red_fireball"'],[f.projectileYellowHearts(),'"yellow_hearts"'],[f.projectilePurpleHearts(),'"purple_hearts"'],[f.projectileRedHearts(),'"red_hearts"'],[f.projectileRandom(),"random"]],A.studio_throw=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=this.VALUES.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("VALUE");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.throwProjectile('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+d+");\n"},a.Blocks.studio_makeProjectile={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.appendDummyInput().appendTitle(" "),this.appendDummyInput().appendTitle(new a.FieldDropdown(this.ACTIONS),"ACTION"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.makeProjectileTooltip())}},a.Blocks.studio_makeProjectile.VALUES=[[f.makeProjectileBlueFireball(),'"blue_fireball"'],[f.makeProjectilePurpleFireball(),'"purple_fireball"'],[f.makeProjectileRedFireball(),'"red_fireball"'],[f.makeProjectileYellowHearts(),'"yellow_hearts"'],[f.makeProjectilePurpleHearts(),'"purple_hearts"'],[f.makeProjectileRedHearts(),'"red_hearts"']],a.Blocks.studio_makeProjectile.ACTIONS=[[f.makeProjectileBounce(),'"bounce"'],[f.makeProjectileDisappear(),'"disappear"']],A.studio_makeProjectile=function(){return"Studio.makeProjectile('block_id_"+this.id+"', "+this.getTitleValue("VALUE")+", "+this.getTitleValue("ACTION")+");\n"},a.Blocks.studio_setSpritePosition={helpUrl:"",init:function(){var b;w?(b=new a.FieldDropdown(this.VALUES_EXTENDED),b.setValue(this.VALUES_EXTENDED[4][1])):(b=new a.FieldDropdown(this.VALUES),b.setValue(this.VALUES[1][1])),this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.setSpritePositionTooltip())}},a.Blocks.studio_setSpritePosition.VALUES=[[f.positionRandom(),n],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()]],a.Blocks.studio_setSpritePosition.VALUES_EXTENDED=[[f.positionRandom(),n],[f.positionOutTopLeft(),l.OUTTOPLEFT.toString()],[f.positionOutTopRight(),l.OUTTOPRIGHT.toString()],[f.positionTopOutLeft(),l.TOPOUTLEFT.toString()],[f.positionTopLeft(),l.TOPLEFT.toString()],[f.positionTopCenter(),l.TOPCENTER.toString()],[f.positionTopRight(),l.TOPRIGHT.toString()],[f.positionTopOutRight(),l.TOPOUTRIGHT.toString()],[f.positionMiddleLeft(),l.MIDDLELEFT.toString()],[f.positionMiddleCenter(),l.MIDDLECENTER.toString()],[f.positionMiddleRight(),l.MIDDLERIGHT.toString()],[f.positionBottomOutLeft(),l.BOTTOMOUTLEFT.toString()],[f.positionBottomLeft(),l.BOTTOMLEFT.toString()],[f.positionBottomCenter(),l.BOTTOMCENTER.toString()],[f.positionBottomRight(),l.BOTTOMRIGHT.toString()],[f.positionBottomOutRight(),l.BOTTOMOUTRIGHT.toString()],[f.positionOutBottomLeft(),l.OUTBOTTOMLEFT.toString()],[f.positionOutBottomRight(),l.OUTBOTTOMRIGHT.toString()]],A.studio_setSpritePosition=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpritePosition"})};var B={DIRECTION_CONFIGS:{West:{letter:g.directionWestLetter(),image:y.leftArrow,studioValue:k.WEST.toString(),tooltip:f.moveLeftTooltip()},East:{letter:g.directionEastLetter(),image:y.rightArrow,studioValue:k.EAST.toString(),tooltip:f.moveRightTooltip()},North:{letter:g.directionNorthLetter(),image:y.upArrow,studioValue:k.NORTH.toString(),tooltip:f.moveUpTooltip()},South:{letter:g.directionSouthLetter(),image:y.downArrow,studioValue:k.SOUTH.toString(),tooltip:f.moveDownTooltip()}},DISTANCES:[[y.shortLine,"25"],[y.longLine,"400"]],DEFAULT_MOVE_DISTANCE:"100",generateBlocksForAllDirections:function(){B.generateBlocksForDirection("North"),B.generateBlocksForDirection("South"),B.generateBlocksForDirection("West"),B.generateBlocksForDirection("East")},generateBlocksForDirection:function(b){A["studio_move"+b]=B.generateCodeGenerator(b,!0),a.Blocks["studio_move"+b]=B.generateMoveBlock(b,!1),A["studio_move"+b+"Distance"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"Distance"]=B.generateMoveBlock(b,!1),A["studio_move"+b+"_length"]=B.generateCodeGenerator(b,!1),a.Blocks["studio_move"+b+"_length"]=B.generateMoveBlock(b,!0)},generateMoveBlock:function(b,c){var d=B.DIRECTION_CONFIGS[b];return{helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(new a.FieldImage(d.image)).appendTitle(d.letter),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),c&&this.appendDummyInput().appendTitle(new a.FieldImageDropdown(B.DISTANCES),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(d.tooltip)}}},generateCodeGenerator:function(a,b){var c=B.DIRECTION_CONFIGS[a];return function(){var a=this.getTitleValue("SPRITE")||"0",d=c.studioValue,e=b?"move":"moveDistance",f=this.getTitleValue("DISTANCE")||B.DEFAULT_MOVE_DISTANCE;return"Studio."+e+"('block_id_"+this.id+"', "+a+", "+d+(b?"":", "+f)+");\n"}}};B.generateBlocksForAllDirections(),a.Blocks.studio_move={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveTooltip())}},a.Blocks.studio_move.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],a.Blocks.studio_move.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()]],A.studio_move=function(){return"Studio.move('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+this.getTitleValue("DIR")+");\n"};var C=function(b){b.helpUrl="",b.init=function(){this.setHSV(184,1,.74),t>1?(z?this.appendDummyInput().appendTitle(f.moveSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.moveSpriteN),"SPRITE"),this.appendDummyInput().appendTitle(" ")):this.appendDummyInput().appendTitle(f.moveSprite()),z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DIR),"DIR"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DIR),"DIR"),this.appendDummyInput().appendTitle(" "),b.params?(this.appendValueInput("DISTANCE").setCheck("Number"),this.appendDummyInput().appendTitle(f.moveDistancePixels())):z?this.appendDummyInput().appendTitle(new a.FieldImageDropdown(this.K1_DISTANCE),"DISTANCE"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.DISTANCE),"DISTANCE"),this.setPreviousStatement(!0),this.setInputsInline(!0),this.setNextStatement(!0),this.setTooltip(f.moveDistanceTooltip())},b.K1_DIR=[[y.upArrow,k.NORTH.toString()],[y.rightArrow,k.EAST.toString()],[y.downArrow,k.SOUTH.toString()],[y.leftArrow,k.WEST.toString()]],b.DIR=[[f.moveDirectionUp(),k.NORTH.toString()],[f.moveDirectionDown(),k.SOUTH.toString()],[f.moveDirectionLeft(),k.WEST.toString()],[f.moveDirectionRight(),k.EAST.toString()],[f.moveDirectionRandom(),"random"]],b.params||(b.DISTANCE=[[f.moveDistance25(),"25"],[f.moveDistance50(),"50"],[f.moveDistance100(),"100"],[f.moveDistance200(),"200"],[f.moveDistance400(),"400"],[f.moveDistanceRandom(),"random"]],b.K1_DISTANCE=[[y.shortLine,"25"],[y.longLine,"400"]])};a.Blocks.studio_moveDistance={},C(a.Blocks.studio_moveDistance),a.Blocks.studio_moveDistanceParams={params:!0},C(a.Blocks.studio_moveDistanceParams),A.studio_moveDistance=function(){var a=this.DISTANCE.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DISTANCE");"random"===b&&(b="Studio.random(["+a+"])");var c=this.DIR.slice(0,-1).map(function(a){return a[1]}),d=this.getTitleValue("DIR");return"random"===d&&(d="Studio.random(["+c+"])"),"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+d+", "+b+");\n"},A.studio_moveDistanceParams=function(){var a=this.DIR.slice(0,-1).map(function(a){return a[1]}),b=this.getTitleValue("DIR");"random"===b&&(b="Studio.random(["+a+"])");var c=Blockly.JavaScript.valueToCode(this,"DISTANCE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.moveDistance('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+b+", "+c+");\n"},a.Blocks.studio_playSound={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.play()).appendTitle(new a.FieldImage(y.soundIcon)).appendTitle(new a.FieldDropdown(this.K1_SOUNDS,p),"SOUND"):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.SOUNDS,p),"SOUND"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.playSoundTooltip())}},a.Blocks.studio_playSound.K1_SOUNDS=[[f.soundHit(),"hit"],[f.soundWood(),"wood"],[f.soundRetro(),"retro"],[f.soundSlap(),"slap"],[f.soundRubber(),"rubber"],[f.soundCrunch(),"crunch"],[f.soundWinPoint(),"winpoint"],[f.soundWinPoint2(),"winpoint2"],[f.soundLosePoint(),"losepoint"],[f.soundLosePoint2(),"losepoint2"],[f.soundGoal1(),"goal1"],[f.soundGoal2(),"goal2"]],a.Blocks.studio_playSound.SOUNDS=[[f.playSoundHit(),"hit"],[f.playSoundWood(),"wood"],[f.playSoundRetro(),"retro"],[f.playSoundSlap(),"slap"],[f.playSoundRubber(),"rubber"],[f.playSoundCrunch(),"crunch"],[f.playSoundWinPoint(),"winpoint"],[f.playSoundWinPoint2(),"winpoint2"],[f.playSoundLosePoint(),"losepoint"],[f.playSoundLosePoint2(),"losepoint2"],[f.playSoundGoal1(),"goal1"],[f.playSoundGoal2(),"goal2"]],A.studio_playSound=function(){return"Studio.playSound('block_id_"+this.id+"', '"+this.getTitleValue("SOUND")+"');\n"},a.Blocks.studio_changeScore={helpUrl:"",init:function(){this.setHSV(184,1,.74),z?this.appendDummyInput().appendTitle(g.score()).appendTitle(new a.FieldImage(y.scoreCard)):this.appendDummyInput().appendTitle(new a.FieldDropdown(this.VALUES),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(z?f.changeScoreTooltipK1():f.changeScoreTooltip())}},a.Blocks.studio_changeScore.VALUES=[[f.incrementPlayerScore(),"1"],[f.decrementPlayerScore(),"-1"]],A.studio_changeScore=function(){return"Studio.changeScore('block_id_"+this.id+"', '"+(this.getTitleValue("VALUE")||"1")+"');\n"},a.Blocks.studio_setScoreText={helpUrl:"",init:function(){this.setHSV(184,1,.74),this.appendValueInput("TEXT").setCheck("String").appendTitle(f.setScoreText()),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setScoreTextTooltip())}},A.studio_setScoreText=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.setScoreText('block_id_"+this.id+"', "+a+");\n"},a.Blocks.studio_setSpriteSpeed={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES);b.setValue(this.K1_VALUES[1][1]),this.appendDummyInput().appendTitle(f.speed()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSpeedTooltip())}},a.Blocks.studio_setSpriteSpeed.K1_VALUES=[[y.speedSlow,"Studio.SpriteSpeed.SLOW"],[y.speedMedium,"Studio.SpriteSpeed.NORMAL"],[y.speedFast,"Studio.SpriteSpeed.FAST"]],a.Blocks.studio_setSpriteSpeed.VALUES=[[f.setSpriteSpeedRandom(),n],[f.setSpriteSpeedVerySlow(),"Studio.SpriteSpeed.VERY_SLOW"],[f.setSpriteSpeedSlow(),"Studio.SpriteSpeed.SLOW"],[f.setSpriteSpeedNormal(),"Studio.SpriteSpeed.NORMAL"],[f.setSpriteSpeedFast(),"Studio.SpriteSpeed.FAST"],[f.setSpriteSpeedVeryFast(),"Studio.SpriteSpeed.VERY_FAST"]],A.studio_setSpriteSpeed=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSpeed"})},a.Blocks.studio_setSpriteSize={helpUrl:"",init:function(){this.setHSV(184,1,.74),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite());var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[3][1]),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteSizeTooltip())}},a.Blocks.studio_setSpriteSize.VALUES=[[f.setSpriteSizeRandom(),n],[f.setSpriteSizeVerySmall(),"Studio.SpriteSize.VERY_SMALL"],[f.setSpriteSizeSmall(),"Studio.SpriteSize.SMALL"],[f.setSpriteSizeNormal(),"Studio.SpriteSize.NORMAL"],[f.setSpriteSizeLarge(),"Studio.SpriteSize.LARGE"],[f.setSpriteSizeVeryLarge(),"Studio.SpriteSize.VERY_LARGE"]],A.studio_setSpriteSize=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteSize"})},a.Blocks.studio_setBackground={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b;z?(b=new a.FieldImageDropdown(this.IMAGE_CHOICES,y.dropdownThumbnailWidth,y.dropdownThumbnailHeight),this.appendDummyInput().appendTitle(f.setBackground()).appendTitle(b,"VALUE")):(b=new a.FieldDropdown(this.VALUES),this.appendDummyInput().appendTitle(b,"VALUE")),b.setValue(r),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setBackgroundTooltip())}},a.Blocks.studio_setBackground.VALUES=[[f.setBackgroundRandom(),n],[f.setBackgroundCave(),r],[f.setBackgroundNight(),'"night"'],[f.setBackgroundCloudy(),'"cloudy"'],[f.setBackgroundUnderwater(),'"underwater"'],[f.setBackgroundHardcourt(),'"hardcourt"'],[f.setBackgroundBlack(),'"black"'],[f.setBackgroundCity(),'"city"'],[f.setBackgroundDesert(),'"desert"'],[f.setBackgroundRainbow(),'"rainbow"'],[f.setBackgroundSoccer(),'"soccer"'],[f.setBackgroundSpace(),'"space"'],[f.setBackgroundTennis(),'"tennis"'],[f.setBackgroundWinter(),'"winter"']],a.Blocks.studio_setBackground.IMAGE_CHOICES=[[y.cave.background,r],[y.night.background,'"night"'],[y.cloudy.background,'"cloudy"'],[y.underwater.background,'"underwater"'],[y.hardcourt.background,'"hardcourt"'],[y.black.background,'"black"'],[y.city.background,'"city"'],[y.desert.background,'"desert"'],[y.rainbow.background,'"rainbow"'],[y.soccer.background,'"soccer"'],[y.space.background,'"space"'],[y.tennis.background,'"tennis"'],[y.winter.background,'"winter"'],[y.randomPurpleIcon,n]],A.studio_setBackground=function(){return s({ctx:this,name:"setBackground"}) };var D=function(a){a.helpUrl="",a.init=function(){this.setHSV(184,1,.74),this.appendDummyInput().appendTitle(f.showTitleScreen()),a.params?(this.appendValueInput("TITLE").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenTitle()),this.appendValueInput("TEXT").setCheck("String").setAlign(Blockly.ALIGN_RIGHT).appendTitle(f.showTitleScreenText())):(this.appendDummyInput().appendTitle(f.showTitleScreenTitle()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefTitle()),"TITLE").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12)),this.appendDummyInput().appendTitle(f.showTitleScreenText()).appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.showTSDefText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.showTitleScreenTooltip())}};a.Blocks.studio_showTitleScreen={},D(a.Blocks.studio_showTitleScreen),a.Blocks.studio_showTitleScreenParams={params:!0},D(a.Blocks.studio_showTitleScreenParams),A.studio_showTitleScreen=function(){return"Studio.showTitleScreen('block_id_"+this.id+"', "+a.JavaScript.quote_(this.getTitleValue("TITLE"))+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_showTitleScreenParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TITLE",Blockly.JavaScript.ORDER_NONE)||"",b=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.showTitleScreen('block_id_"+this.id+"', "+a+", "+b+");\n"},z?(a.Blocks.studio_setSprite={helpUrl:"",init:function(){this.setHSV(312,.32,.62);var b=new a.FieldDropdown(this.VALUES);b.setValue(q),this.appendDummyInput().appendTitle(b,"VALUE"),t>1&&this.appendDummyInput().appendTitle(h(),"SPRITE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteK1Tooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHideK1(),o],[f.setSpriteShowK1(),q]]):(a.Blocks.studio_setSprite={helpUrl:"",init:function(){var b=new a.FieldDropdown(this.VALUES);b.setValue(this.VALUES[2][1]),this.setHSV(312,.32,.62),t>1?this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),this.appendDummyInput().appendTitle(b,"VALUE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteTooltip())}},a.Blocks.studio_setSprite.VALUES=[[f.setSpriteHidden(),o],[f.setSpriteRandom(),n],[f.setSpriteWitch(),'"witch"'],[f.setSpriteCat(),'"cat"'],[f.setSpriteDinosaur(),'"dinosaur"'],[f.setSpriteDog(),'"dog"'],[f.setSpriteOctopus(),'"octopus"'],[f.setSpritePenguin(),'"penguin"'],[f.setSpriteBat(),'"bat"'],[f.setSpriteBird(),'"bird"'],[f.setSpriteDragon(),'"dragon"'],[f.setSpriteSquirrel(),'"squirrel"'],[f.setSpriteWizard(),'"wizard"'],[f.setSpriteAlien(),'"alien"'],[f.setSpriteGhost(),'"ghost"'],[f.setSpriteMonster(),'"monster"'],[f.setSpriteRobot(),'"robot"'],[f.setSpriteUnicorn(),'"unicorn"'],[f.setSpriteZombie(),'"zombie"'],[f.setSpriteKnight(),'"knight"'],[f.setSpriteNinja(),'"ninja"'],[f.setSpritePirate(),'"pirate"'],[f.setSpriteCaveBoy(),'"caveboy"'],[f.setSpriteCaveGirl(),'"cavegirl"'],[f.setSpritePrincess(),'"princess"'],[f.setSpriteSpacebot(),'"spacebot"'],[f.setSpriteSoccerGirl(),'"soccergirl"'],[f.setSpriteSoccerBoy(),'"soccerboy"'],[f.setSpriteTennisGirl(),'"tennisgirl"'],[f.setSpriteTennisBoy(),'"tennisboy"']]),A.studio_setSprite=function(){var a=(this.getTitleValue("VALUE"),this.getTitleValue("SPRITE")||"0");return s({ctx:this,extraParams:a,name:"setSprite"})},a.Blocks.studio_setSpriteEmotion={helpUrl:"",init:function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.setSprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.setSpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.setSprite()),z){var b=new a.FieldImageDropdown(this.K1_VALUES,34,34);b.setValue(this.K1_VALUES[0][1]),this.appendDummyInput().appendTitle(f.emotion()).appendTitle(b,"VALUE")}else{var d=new a.FieldDropdown(this.VALUES);d.setValue(this.VALUES[1][1]),this.appendDummyInput().appendTitle(d,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.setSpriteEmotionTooltip())}},a.Blocks.studio_setSpriteEmotion.VALUES=[[f.setSpriteEmotionRandom(),n],[f.setSpriteEmotionNormal(),m.NORMAL.toString()],[f.setSpriteEmotionHappy(),m.HAPPY.toString()],[f.setSpriteEmotionAngry(),m.ANGRY.toString()],[f.setSpriteEmotionSad(),m.SAD.toString()]],a.Blocks.studio_setSpriteEmotion.K1_VALUES=[[y.emotionNormal,m.NORMAL.toString()],[y.emotionHappy,m.HAPPY.toString()],[y.emotionAngry,m.ANGRY.toString()],[y.emotionSad,m.SAD.toString()],[y.randomPurpleIcon,n]],A.studio_setSpriteEmotion=function(){return s({ctx:this,extraParams:this.getTitleValue("SPRITE")||"0",name:"setSpriteEmotion"})};var E=function(a){a.helpUrl="",a.init=function(){if(this.setHSV(184,1,.74),t>1?z?this.appendDummyInput().appendTitle(f.saySprite()).appendTitle(h(),"SPRITE"):this.appendDummyInput().appendTitle(c(f.saySpriteN),"SPRITE"):this.appendDummyInput().appendTitle(f.saySprite()),a.params)this.appendValueInput("TEXT").setCheck("String");else{var b=this.appendDummyInput();z&&b.appendTitle(new Blockly.FieldImage(y.speechBubble)),b.appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote0.png"),12,12)).appendTitle(new Blockly.FieldTextInput(f.defaultSayText()),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.assetUrl("media/quote1.png"),12,12))}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(f.saySpriteTooltip())}};a.Blocks.studio_saySprite={},E(a.Blocks.studio_saySprite),a.Blocks.studio_saySpriteParams={params:!0},E(a.Blocks.studio_saySpriteParams),A.studio_saySprite=function(){return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a.JavaScript.quote_(this.getTitleValue("TEXT"))+");\n"},A.studio_saySpriteParams=function(){var a=Blockly.JavaScript.valueToCode(this,"TEXT",Blockly.JavaScript.ORDER_NONE)||"";return"Studio.saySprite('block_id_"+this.id+"', "+(this.getTitleValue("SPRITE")||"0")+", "+a+");\n"};var F=function(b){b.helpUrl="",b.init=function(){if(this.setHSV(184,1,.74),b.params)this.appendDummyInput().appendTitle(f.waitFor()),this.appendValueInput("VALUE").setCheck("Number"),this.appendDummyInput().appendTitle(f.waitSeconds());else{var c=new a.FieldDropdown(this.VALUES);c.setValue(this.VALUES[2][1]),this.appendDummyInput().appendTitle(c,"VALUE")}this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(b.params?f.waitParamsTooltip():f.waitTooltip())},b.params||(b.VALUES=[[f.waitForClick(),'"click"'],[f.waitForRandom(),"random"],[f.waitForHalfSecond(),"500"],[f.waitFor1Second(),"1000"],[f.waitFor2Seconds(),"2000"],[f.waitFor5Seconds(),"5000"],[f.waitFor10Seconds(),"10000"]])};a.Blocks.studio_wait={},F(a.Blocks.studio_wait),a.Blocks.studio_waitParams={params:!0},F(a.Blocks.studio_waitParams),A.studio_wait=function(){return s({ctx:this,name:"wait"})},A.studio_waitParams=function(){var a=Blockly.JavaScript.valueToCode(this,"VALUE",Blockly.JavaScript.ORDER_NONE)||"0";return"Studio.wait('block_id_"+this.id+"', ("+a+" * 1000));\n"}}},{"../../locale/zh_tw/common":40,"../../locale/zh_tw/studio":41,"../codegen":6,"../lodash":11,"../utils":38,"./tiles":25}],17:[function(a,b){"use strict";var c=a("./studio"),d=a("./tiles").Direction,e=function(a){for(var b in a)this[b]=a[b];this.visible=this.visible||!0,this.flags=0,this.collidingWith_={},this.frames=this.frames||1};b.exports=e,e.prototype.clearCollisions=function(){this.collidingWith_={}},e.prototype.startCollision=function(a){return this.isCollidingWith(a)?!1:(this.collidingWith_[a]=!0,!0)},e.prototype.endCollision=function(a){this.collidingWith_[a]=!1},e.prototype.isCollidingWith=function(a){return this.collidingWith_[a]===!0},e.prototype.bounce=function(){switch(this.dir){case d.NORTH:this.dir=d.SOUTH;break;case d.WEST:this.dir=d.EAST;break;case d.SOUTH:this.dir=d.NORTH;break;case d.EAST:this.dir=d.WEST}},e.prototype.outOfBounds=function(){return this.x<-(this.width/2)||this.x>c.MAZE_WIDTH+this.width/2||this.y<-(this.height/2)||this.y>c.MAZE_HEIGHT+this.height/2}},{"./studio":24,"./tiles":25}],18:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push('\n\n
\n
\n\n'),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],19:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push("\n\n"),finishButton&&buf.push('\n \n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],20:[function(a,b){function c(a){var b={};return a.sprite&&(b.SPRITE=a.sprite),a.requiredText&&(b.TEXT=a.requiredText),a.notDefaultText&&(b.TEXT=d.helloWorld()),[{test:function(b){return"studio_saySprite"!==b.type?!1:a.sprite&&b.getTitleValue("SPRITE")!==a.sprite?!1:(a.notDefaultText||a.requiredText)&&b.getTitleValue("TEXT")===d.defaultSayText()?!1:!0},type:"studio_saySprite",titles:b}]}var d=a("../../locale/zh_tw/studio"),e=a("../utils"),f=a("../block_utils"),g=a("./tiles"),h=(g.Direction,g.Emotions),i=f.createToolbox,j=f.blockOfType,k=f.createCategory,l=j("studio_moveNorthDistance")+j("studio_moveEastDistance")+j("studio_moveSouthDistance")+j("studio_moveWestDistance"),m=(j("studio_moveNorth")+j("studio_moveEast")+j("studio_moveSouth")+j("studio_moveWest"),b.exports={});m.dog_hello={ideal:2,requiredBlocks:[[{test:function(a){return"studio_saySprite"==a.type&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.helloWorld()}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0}},timeoutFailureTick:100,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_1=e.extend(m.dog_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_1=e.extend(m.dog_hello),m.c3_story_1=e.extend(m.dog_hello),m.playlab_1=e.extend(m.dog_hello),m.dog_and_cat_hello={ideal:3,requiredBlocks:[c({sprite:"0",notDefaultText:!0}),c({sprite:"1",notDefaultText:!0})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>1}},timeoutFailureTick:200,toolbox:i(j("studio_saySprite")),startBlocks:''},m.k1_2=e.extend(m.dog_and_cat_hello,{isK1:!0,toolbox:i(j("studio_saySprite"))}),m.c2_2=e.extend(m.dog_and_cat_hello,{}),m.c3_story_2=e.extend(m.dog_and_cat_hello,{}),m.playlab_2=e.extend(m.dog_and_cat_hello,{}),m.dog_move_cat={ideal:2,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2"}}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:100,toolbox:i('2'+j("studio_saySprite")),startBlocks:''},m.k1_3=e.extend(m.dog_move_cat,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}]],toolbox:i(l+j("studio_saySprite"))}),m.c2_3=e.extend(m.dog_move_cat,{}),m.c3_story_3=e.extend(m.dog_move_cat,{}),m.playlab_3=e.extend(m.dog_move_cat,{}),m.dog_move_cat_hello={ideal:4,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{DIR:"2",DISTANCE:"100"}}],c({sprite:"1",requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],goal:{successCondition:function(){return Studio.sayComplete>0&&Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:200,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.k1_4=e.extend(m.dog_move_cat_hello,{isK1:!0,requiredBlocks:[[{test:function(a){return"studio_moveEastDistance"==a.type},type:"studio_moveEastDistance"}],[{test:function(a){return"studio_saySprite"==a.type&&"1"===a.getTitleValue("SPRITE")&&a.getTitleValue("TEXT")!==d.defaultSayText()},type:"studio_saySprite",titles:{TEXT:d.hello(),SPRITE:"1"}}]],toolbox:i(l+j("studio_saySprite")),startBlocks:' '}),m.c2_4=e.extend(m.dog_move_cat_hello,{}),m.c3_story_4=e.extend(m.dog_move_cat_hello,{}),m.playlab_4=e.extend(m.dog_move_cat_hello,{}),m.click_hello={ideal:3,requiredBlocks:[c({requiredText:d.hello()})],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return this.successState.seenCmd||(this.successState.seenCmd=Studio.isCmdCurrentInQueue("saySprite","whenSpriteClicked-0")),Studio.sayComplete>0&&this.successState.seenCmd}},timeoutFailureTick:300,toolbox:i('2'+j("studio_saySprite")),startBlocks:' '},m.c2_5=e.extend(m.click_hello,{}),m.c3_game_1=e.extend(m.click_hello,{}),m.playlab_5=e.extend(m.click_hello,{}),m.octopus_happy={ideal:2,requiredBlocks:[[{test:"setSpriteEmotion",type:"studio_setSpriteEmotion"}]],scale:{snapRadius:2},map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,16,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:4,goal:{successCondition:function(){return Studio.sprite[0].emotion===h.HAPPY&&Studio.tickCount>=50}},timeoutFailureTick:100,toolbox:i('2'+j("studio_setSpriteEmotion")),startBlocks:''},m.k1_5=e.extend(m.octopus_happy,{isK1:!0,toolbox:i(l+j("studio_setSpriteEmotion"))}),m.c3_story_5=e.extend(m.octopus_happy,{}),m.c3_story_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")),startBlocks:''},m.move_penguin={ideal:8,requiredBlocks:[[{test:"move",type:"studio_move"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[1,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,16,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,1,0,0,0,0,1,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,toolbox:i(j("studio_move")+j("studio_saySprite")),startBlocks:' '},m.c2_6=e.extend(m.move_penguin,{}),m.c3_game_2=e.extend(m.move_penguin,{}),m.playlab_6=e.extend(m.move_penguin,{}),m.dino_up_and_down={ideal:11,requiredBlocks:[[{test:"moveDistance",type:"studio_moveDistance",titles:{SPRITE:"1",DISTANCE:"400"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,protaganistSpriteIndex:1,timeoutFailureTick:150,minWorkspaceHeight:800,toolbox:i(' 400 1 1'),startBlocks:' 8 2 1 4 '},m.c2_7=e.extend(m.dino_up_and_down,{}),m.c3_game_3=e.extend(m.dino_up_and_down,{}),m.playlab_7=e.extend(m.dino_up_and_down,{}),m.penguin_ouch={ideal:14,requiredBlocks:[c({sprite:"0",requiredText:d.ouchExclamation()}),[{test:"playSound",type:"studio_playSound"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:900,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(1)}},timeoutFailureTick:300,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")),startBlocks:' 8 2 1 4 1 400 1 400 4 '},m.c2_8=e.extend(m.penguin_ouch,{}),m.c3_game_4=e.extend(m.penguin_ouch,{}),m.penguin_touch_octopus={ideal:16,requiredBlocks:[[{test:"changeScore",type:"studio_changeScore"}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1050,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2'},m.c2_9=e.extend(m.penguin_touch_octopus,{}),m.c3_game_5=e.extend(m.penguin_touch_octopus,{}),m.playlab_8=e.extend(m.penguin_touch_octopus,{}),m.change_background_and_speed={ideal:19,requiredBlocks:[[{test:"setBackground",type:"studio_setBackground",titles:{VALUE:'"night"'}}],[{test:"setSpriteSpeed",type:"studio_setSpriteSpeed",titles:{VALUE:"Studio.SpriteSpeed.FAST"}}]],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],map:[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[16,0,0,0,16,0,16,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],firstSpriteIndex:2,minWorkspaceHeight:1250,goal:{successCondition:function(){return Studio.sprite[0].isCollidingWith(2)}},timeoutFailureTick:600,toolbox:i(' "night" 400 1'+j("studio_saySprite")+j("studio_playSound")+j("studio_changeScore")+' Studio.SpriteSpeed.FAST'),startBlocks:' 8 2 1 4 1 400 1 400 4 Ouch! 2 '},m.c2_10=e.extend(m.change_background_and_speed,{}),m.c3_game_6=e.extend(m.change_background_and_speed,{}),m.playlab_9=e.extend(m.change_background_and_speed,{}),m.sandbox={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!1,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(j("studio_setSprite")+j("studio_setBackground")+j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided")+j("studio_repeatForever")+j("studio_showTitleScreen")+j("studio_move")+j("studio_moveDistance")+j("studio_stop")+j("studio_wait")+j("studio_playSound")+j("studio_changeScore")+j("studio_saySprite")+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")),startBlocks:''},m.c2_11=e.extend(m.sandbox,{}),m.c3_game_7=e.extend(m.sandbox,{}),m.playlab_10=e.extend(m.sandbox,{}),m.k1_6={ideal:1/0,requiredBlocks:[],scale:{snapRadius:2},minWorkspaceHeight:1500,spritesHiddenToStart:!0,freePlay:!0,map:[[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,0,16,0,16,0,16,0],[0,16,0,16,0,16,0,0],[16,16,16,16,16,16,16,0],[0,0,0,0,0,0,0,0]],isK1:!0,softButtons:[],toolbox:i(j("studio_setSprite")+j("studio_saySprite")+l+j("studio_whenSpriteCollided")+j("studio_setBackground")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_playSound")+j("studio_vanish")),startBlocks:' 0 '},m.k1_block_test=e.extend(m[99],{toolbox:i(j("studio_setSprite")+j("studio_moveNorth")+j("studio_moveSouth")+j("studio_moveEast")+j("studio_moveWest")+j("studio_moveNorth_length")+j("studio_moveSouth_length")+j("studio_moveEast_length")+j("studio_moveWest_length")),isK1:!0}),m.full_sandbox={scrollbars:!0,requiredBlocks:[],scale:{snapRadius:2},softButtons:["leftButton","rightButton","downButton","upButton"],minWorkspaceHeight:1400,edgeCollisions:!0,projectileCollisions:!0,allowSpritesOutsidePlayspace:!0,spritesHiddenToStart:!0,freePlay:!0,map:[[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,16,0,0,0,16,0,0],[0,0,0,0,0,0,0,0]],toolbox:i(k(d.catActions(),j("studio_setSprite")+j("studio_setBackground")+' '+j("studio_move")+' 25 '+j("studio_stop")+' 1 '+j("studio_playSound")+' '+j("studio_setSpritePosition")+j("studio_throw")+j("studio_makeProjectile")+j("studio_setSpriteSpeed")+j("studio_setSpriteEmotion")+j("studio_vanish")+j("studio_setSpriteSize"))+k(d.catEvents(),j("studio_whenArrow")+j("studio_whenSpriteClicked")+j("studio_whenSpriteCollided"))+k(d.catControl(),j("studio_repeatForever")+' 10 '+j("controls_whileUntil")+' 1 10 1 '+j("controls_flow_statements"))+k(d.catLogic(),j("controls_if")+j("logic_compare")+j("logic_operation")+j("logic_negate")+j("logic_boolean"))+k(d.catMath(),j("math_number")+' 1 1 100 '+j("math_arithmetic"))+k(d.catText(),j("text")+j("text_join")+' ')+k(d.catVariables(),"","VARIABLE")+k(d.catProcedures(),"","PROCEDURE")),startBlocks:''} -},{"../../locale/zh_tw/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value,y.setSprite({spriteIndex:a.spriteIndex,value:y.sprite[a.spriteIndex].value})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH); +},{"../../locale/zh_tw/studio":41,"../block_utils":3,"../utils":38,"./tiles":25}],21:[function(a){(function(b){var c=a("../appMain");window.Studio=a("./studio"),"undefined"!=typeof b&&(b.Studio=window.Studio);var d=a("./blocks"),e=a("./levels"),f=a("./skins");window.studioMain=function(a){a.skinsModule=f,a.blocksModule=d,c(window.Studio,e,a)}}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../appMain":1,"./blocks":16,"./levels":20,"./skins":23,"./studio":24}],22:[function(a,b){var c=a("./collidable"),d=a("./tiles").Direction,e=a("./tiles"),f=0,g={};g[d.EAST]=0,g[d.SOUTH]=90,g[d.WEST]=180,g[d.NORTH]=270;var h={};h[d.NORTH]={x:.5,y:0},h[d.EAST]={x:1,y:.5},h[d.SOUTH]={x:.5,y:1},h[d.WEST]={x:0,y:.5};var i={};i[d.NORTH]={x:0,y:-25},i[d.EAST]={x:25,y:0},i[d.SOUTH]={x:0,y:25},i[d.WEST]={x:-25,y:0};var j=function(a){c.apply(this,arguments),this.height=a.height||50,this.width=a.width||50,this.speed=a.speed||e.DEFAULT_SPRITE_SPEED/2,this.isFireball_=-1!==this.className.indexOf("fireball"),this.frames=this.isFireball_?8:1,this.currentFrame_=0;var b=this;this.animator_=window.setInterval(function(){b.currentFrame_=(b.currentFrame_+1)%b.frames},50),this.x=a.spriteX+i[a.dir].x+a.spriteWidth*h[a.dir].x,this.y=a.spriteY+i[a.dir].y+a.spriteHeight*h[a.dir].y};j.prototype=new c,b.exports=j,j.prototype.createElement=function(a){this.clipPath=document.createElementNS(Blockly.SVG_NS,"clipPath");var b="projectile_clippath_"+f++;this.clipPath.setAttribute("id",b);var c=document.createElementNS(Blockly.SVG_NS,"rect");c.setAttribute("width",this.width),c.setAttribute("height",this.height),this.clipPath.appendChild(c),a.appendChild(this.clipPath),this.element=document.createElementNS(Blockly.SVG_NS,"image"),this.element.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.image),this.element.setAttribute("height",this.height),this.element.setAttribute("width",this.width*this.frames),a.appendChild(this.element),this.element.setAttribute("clip-path","url(#"+b+")")},j.prototype.removeElement=function(){this.element&&(this.element.parentNode.removeChild(this.element),this.element=null),this.clipPath&&(this.clipPath.parentNode.removeChild(this.clipPath),this.clipPath=null),this.animator_&&(window.clearInterval(this.animator_),this.animator_=null)},j.prototype.display=function(){var a={x:this.x-this.width/2,y:this.y-this.height/2};this.element.setAttribute("x",a.x-this.width*this.currentFrame_),this.element.setAttribute("y",a.y);var b=this.clipPath.childNodes[0];b.setAttribute("x",a.x),b.setAttribute("y",a.y),this.isFireball_&&this.element.setAttribute("transform","rotate("+g[this.dir]+", "+this.x+", "+this.y+")")},j.prototype.getNextPosition=function(){var a=d.getUnitVector(this.dir);return{x:this.x+this.speed*a.x,y:this.y+this.speed*a.y}},j.prototype.moveToNextPosition=function(){var a=this.getNextPosition();this.x=a.x,this.y=a.y}},{"./collidable":17,"./tiles":25}],23:[function(a,b,c){var d=a("../skins"),e={studio:{}};c.load=function(a,b){var c=d.load(a,b),f=e[c.id];if(c.hardcourt={background:c.assetUrl("background.png")},c.black={background:c.assetUrl("retro_background.png")},c.cave={background:c.assetUrl("background_cave.png")},c.night={background:c.assetUrl("background_santa.png")},c.cloudy={background:c.assetUrl("background_scifi.png")},c.underwater={background:c.assetUrl("background_underwater.png")},c.city={background:c.assetUrl("background_city.png")},c.desert={background:c.assetUrl("background_desert.png")},c.rainbow={background:c.assetUrl("background_rainbow.png")},c.soccer={background:c.assetUrl("background_soccer.png")},c.space={background:c.assetUrl("background_space.png")},c.tennis={background:c.assetUrl("background_tennis.png")},c.winter={background:c.assetUrl("background_winter.png")},c.avatarList=["dog","cat","penguin","dinosaur","octopus","witch","bat","bird","dragon","squirrel","wizard","alien","ghost","monster","robot","unicorn","zombie","knight","ninja","pirate","caveboy","cavegirl","princess","spacebot","soccergirl","soccerboy","tennisgirl","tennisboy"],c.avatarList.forEach(function(a){c[a]={sprite:c.assetUrl(a+"_spritesheet_200px.png"),dropdownThumbnail:c.assetUrl(a+"_thumb.png"),spriteFlags:28}}),c.yellow_hearts=c.assetUrl("yellow_hearts.gif"),c.purple_hearts=c.assetUrl("purple_hearts.gif"),c.red_hearts=c.assetUrl("red_hearts.gif"),c.blue_fireball=c.assetUrl("blue_fireball.png"),c.purple_fireball=c.assetUrl("purple_fireball.png"),c.red_fireball=c.assetUrl("red_fireball.png"),c.explosion=c.assetUrl("explosion.gif"),c.explosionThumbnail=c.assetUrl("explosion_thumb.png"),c.whenUp=c.assetUrl("when-up.png"),c.whenDown=c.assetUrl("when-down.png"),c.whenLeft=c.assetUrl("when-left.png"),c.whenRight=c.assetUrl("when-right.png"),c.collide=c.assetUrl("when-sprite-collide.png"),c.emotionAngry=c.assetUrl("emotion-angry.png"),c.emotionNormal=c.assetUrl("emotion-nothing.png"),c.emotionSad=c.assetUrl("emotion-sad.png"),c.emotionHappy=c.assetUrl("emotion-happy.png"),c.speechBubble=c.assetUrl("say-sprite.png"),c.goal=c.assetUrl("goal.png"),c.goalSuccess=c.assetUrl("goal_success.png"),c.approachingGoalAnimation=c.assetUrl(f.approachingGoalAnimation),c.rubberSound=[c.assetUrl("wall.mp3"),c.assetUrl("wall.ogg")],c.flagSound=[c.assetUrl("win_goal.mp3"),c.assetUrl("win_goal.ogg")],c.crunchSound=[c.assetUrl("wall0.mp3"),c.assetUrl("wall0.ogg")],c.winPointSound=[c.assetUrl("1_we_win.mp3"),c.assetUrl("1_we_win.ogg")],c.winPoint2Sound=[c.assetUrl("2_we_win.mp3"),c.assetUrl("2_we_win.ogg")],c.losePointSound=[c.assetUrl("1_we_lose.mp3"),c.assetUrl("1_we_lose.ogg")],c.losePoint2Sound=[c.assetUrl("2_we_lose.mp3"),c.assetUrl("2_we_lose.ogg")],c.goal1Sound=[c.assetUrl("1_goal.mp3"),c.assetUrl("1_goal.ogg")],c.goal2Sound=[c.assetUrl("2_goal.mp3"),c.assetUrl("2_goal.ogg")],c.woodSound=[c.assetUrl("1_paddle_bounce.mp3"),c.assetUrl("1_paddle_bounce.ogg")],c.retroSound=[c.assetUrl("2_paddle_bounce.mp3"),c.assetUrl("2_paddle_bounce.ogg")],c.slapSound=[c.assetUrl("1_wall_bounce.mp3"),c.assetUrl("1_wall_bounce.ogg")],c.hitSound=[c.assetUrl("2_wall_bounce.mp3"),c.assetUrl("2_wall_bounce.ogg")],void 0!==f.background){var g=Math.floor(Math.random()*f.background);c.background=c.assetUrl("background"+g+".png")}else c.background=c.assetUrl("background.png");return c.spriteHeight=f.spriteHeight||100,c.spriteWidth=f.spriteWidth||100,c.dropdownThumbnailWidth=50,c.dropdownThumbnailHeight=50,c}},{"../skins":13}],24:[function(a,b){"use strict";function c(){y.map=z.map,y.timeoutFailureTick=z.timeoutFailureTick||1/0,y.minWorkspaceHeight=z.minWorkspaceHeight,y.softButtons_=z.softButtons||{},y.protaganistSpriteIndex=z.protaganistSpriteIndex||0,y.startAvatars=d(A.avatarList,z.firstSpriteIndex);for(var a in z.scale)y.scale[a]=z.scale[a];y.ROWS=y.map.length,y.COLS=y.map[0].length,y.SQUARE_SIZE=50,y.DEFAULT_SPRITE_HEIGHT=A.spriteHeight,y.DEFAULT_SPRITE_WIDTH=A.spriteWidth,y.MARKER_HEIGHT=100,y.MARKER_WIDTH=100,y.MAZE_WIDTH=y.SQUARE_SIZE*y.COLS,y.MAZE_HEIGHT=y.SQUARE_SIZE*y.ROWS}function d(a,b){return b=b||0,t.flatten([a.slice(b),a.slice(0,b)])}function e(a,b,c,d,e,f){return Math.abs(a-b)<=c&&Math.abs(d-e)<=f}function f(){for(var a=function(a){y.executeQueue("whenSpriteCollided-"+f+"-"+a)},b=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.sprite[b].height:y.sprite[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},c=function(a,b,c){var d=c?y.sprite[a].height:y.sprite[a].width,e=c?y.projectiles[b].height:y.projectiles[b].width;return j.SPRITE_COLLIDE_DISTANCE_SCALING*(d+e)/2},d=function(a,b,c){var d,e=c?y.sprite[a].height:y.sprite[a].width;return d="left"===b||"right"===b?c?y.MAZE_HEIGHT:0:c?0:y.MAZE_WIDTH,(e+d)/2},f=0;fa.width-2*a.sideMargin){if(c.firstChild.data=c.firstChild.data.slice(0,g),a.maxLines===e)return a.fullHeight;c=document.createElementNS("http://www.w3.org/2000/svg","tspan"),c.setAttribute("x",a.width/2),c.setAttribute("dy",a.lineHeight),d=document.createTextNode(b[f]),c.appendChild(d),a.svgText.appendChild(c),e++}}var h=a.maxLines-Math.max(1,e);return a.fullHeight-h*a.lineHeight},mb=function(a,b){y.eventHandlers.forEach(function(c){if(c.name===a&&(b||!c.cmdQueue||0===c.cmdQueue.length)){c.cmdQueue||(c.cmdQueue=[]),y.currentCmdQueue=c.cmdQueue;try{c.func(h,l,y.Globals)}catch(d){}y.currentCmdQueue=null}})};y.onTick=function(){y.tickCount++,1===y.tickCount&&mb("whenGameStarts"),y.executeQueue("whenGameStarts"),mb("repeatForever"),y.executeQueue("repeatForever");for(var a=0;aDb&&(y.sprite[a].dir=u.SOUTH),y.displaySprite(a);for(a=0;a=G.LEFT&&a.keyCode<=G.DOWN&&a.preventDefault()},y.onArrowButtonDown=function(a,b){y.btnState[b]=B.DOWN,a.preventDefault()},y.onSpriteClicked=function(a,b){y.intervalId&&mb("whenSpriteClicked-"+b),a.preventDefault()},y.onSvgClicked=function(a){y.intervalId&&y.eventHandlers.forEach(function(a){var b=a.cmdQueue?a.cmdQueue[0]:null;b&&b.opts.waitForClick&&!b.opts.complete&&(b.opts.waitCallback&&b.opts.waitCallback(),b.opts.complete=!0)}),a.preventDefault()},y.onArrowButtonUp=function(a,b){y.btnState[b]=B.UP},y.onMouseUp=function(){y.btnState={}},y.initSprites=function(){y.spriteCount=0,y.sprite=[],y.projectiles=[],y.spriteGoals_=[];for(var a=0;a=h.TestResults.FREE_PLAY?"win":"failure"),z.editCode&&(y.testResults=a?h.TestResults.ALL_PASS:h.TestResults.TOO_FEW_BLOCKS_FAIL);var b=Blockly.Xml.workspaceToDom(Blockly.mainWorkspace),c=Blockly.Xml.domToText(b);y.waitingForReport=!0,h.report({app:"studio",level:z.id,result:y.result===h.ResultType.SUCCESS,testResult:y.testResults,program:encodeURIComponent(c),onComplete:y.onReportComplete})};var zb={};zb[u.SOUTHEAST]=0,zb[u.EAST]=1,zb[u.NORTHEAST]=2,zb[u.NORTH]=3,zb[u.NORTHWEST]=4,zb[u.WEST]=5,zb[u.SOUTHWEST]=6;var Ab=6,Bb=7,Cb=8,Db=5,Eb=function(a){var b=y.sprite[a],c=0;return b.flags&C.TURNS&&b.displayDir!==u.SOUTH?b.firstTurnFrameNum+zb[b.displayDir]:(b.flags&C.ANIMATION&&y.tickCount&&1===Math.round((y.tickCount+a*Bb)/Ab)%Cb&&(c=b.firstAnimFrameNum),b.emotion!==x.NORMAL&&b.flags&C.EMOTIONS?c?c:b.firstEmotionFrameNum+(b.emotion-1):c)},Fb=function(a){var b=E.NORMAL;return y.sprite[a].flags&C.ANIMATION&&(b+=E.ANIMATION),y.sprite[a].flags&C.TURNS&&(b+=E.TURNS),y.sprite[a].flags&C.EMOTIONS&&(b+=E.EMOTIONS),b},Gb=function(a){var b=+a.getAttribute("height"),c="true"===a.getAttribute("onTop"),d="true"===a.getAttribute("onRight");a.setAttribute("d",Mb(0,0,ab,b,V,c,d))};y.displaySprite=function(a){var b=y.sprite[a],c=b.width*Eb(a),d=document.getElementById("sprite"+a),e=document.getElementById("spriteClipRect"+a),f=e.getAttribute("x"),g=e.getAttribute("y"),h=b.dir;h===u.NONE?b.dir=u.SOUTH:(b.x!=f||b.y!=g)&&(b.dir=u.NONE,b.xf&&(b.dir|=u.EAST),b.yg&&(b.dir|=u.SOUTH)),b.dir!==b.displayDir&&y.tickCount&&0===y.tickCount%2&&(b.displayDir=v[b.displayDir][b.dir]),d.setAttribute("x",b.x-c),d.setAttribute("y",b.y),e.setAttribute("x",b.x),e.setAttribute("y",b.y);var i=document.getElementById("speechBubble"+a),j=document.getElementById("speechBubblePath"+a),k=+j.getAttribute("height"),l="true"===j.getAttribute("onTop"),m="true"===j.getAttribute("onRight"),n=!0,o=!0,p=b.y-(k+X);0>p&&(p=b.y+b.height+X,n=!1);var q=b.x+W;q>y.MAZE_WIDTH-ab&&(q=b.x+b.width-(ab+W),o=!1),j.setAttribute("onTop",n),j.setAttribute("onRight",o),(l!==n||m!==o)&&Gb(j),i.setAttribute("transform","translate("+q+","+p+")")},y.displayScore=function(){var a=document.getElementById("score");a.textContent=y.scoreText?y.scoreText:i.scoreText({playerScore:y.playerScore}),a.setAttribute("visibility","visible")},y.queueCmd=function(a,b,c){var d={id:a,name:b,opts:c};if(y.currentEventParams)for(var e in y.currentEventParams)d.opts[e]=y.currentEventParams[e];y.currentCmdQueue.push(d)},y.executeQueue=function(a){y.eventHandlers.forEach(function(b){if(b.name===a&&b.cmdQueue)for(var c=b.cmdQueue[0];c&&y.callCmd(c);c=b.cmdQueue[0])b.cmdQueue.shift()})},y.callCmd=function(a){switch(a.name){case"setBackground":h.highlight(a.id),y.setBackground(a.opts);break;case"setSprite":h.highlight(a.id),y.setSprite(a.opts);break;case"saySprite":return a.opts.started||h.highlight(a.id),y.saySprite(a.opts);case"setSpriteEmotion":h.highlight(a.id),y.setSpriteEmotion(a.opts);break;case"setSpriteSpeed":h.highlight(a.id),y.setSpriteSpeed(a.opts);break;case"setSpriteSize":h.highlight(a.id),y.setSpriteSize(a.opts);break;case"setSpritePosition":h.highlight(a.id),y.setSpritePosition(a.opts);break;case"playSound":h.highlight(a.id),h.playAudio(a.opts.soundName,{volume:1}),y.playSoundCount++;break;case"showTitleScreen":return a.opts.started||h.highlight(a.id),y.showTitleScreen(a.opts);case"move":h.highlight(a.id),y.moveSingle(a.opts);break;case"moveDistance":return a.opts.started||h.highlight(a.id),y.moveDistance(a.opts);case"stop":h.highlight(a.id),y.stop(a.opts);break;case"throwProjectile":return a.opts.started||h.highlight(a.id),y.throwProjectile(a.opts);case"makeProjectile":h.highlight(a.id),y.makeProjectile(a.opts);break;case"changeScore":h.highlight(a.id),y.changeScore(a.opts);break;case"setScoreText":h.highlight(a.id),y.setScoreText(a.opts);break;case"wait":return a.opts.started||h.highlight(a.id),y.wait(a.opts);case"vanish":h.highlight(a.id),y.vanishActor(a.opts)}return!0},y.vanishActor=function(a){var b=document.getElementById("svgStudio"),c=document.getElementById("sprite"+a.spriteIndex);if(c&&"hidden"!==c.getAttribute("visibility")){var d=document.getElementById("explosion"+a.spriteIndex);d||(d=document.createElementNS(Blockly.SVG_NS,"image"),d.setAttribute("id","explosion"+a.spriteIndex),d.setAttribute("visibility","hidden"),b.appendChild(d,c));var e=document.getElementById("spriteClipRect"+a.spriteIndex);d.setAttribute("height",y.sprite[a.spriteIndex].height),d.setAttribute("width",y.sprite[a.spriteIndex].width),d.setAttribute("x",e.getAttribute("x")),d.setAttribute("y",e.getAttribute("y")),d.setAttribute("visibility","visible"),y.setSprite({spriteIndex:a.spriteIndex,value:"hidden"}),d.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A.explosion+"?spriteIndex="+a.spriteIndex)}},y.setSpriteEmotion=function(a){y.sprite[a.spriteIndex].emotion=a.value},y.setSpriteSpeed=function(a){y.sprite[a.spriteIndex].speed=a.value},y.setSpriteSize=function(a){y.sprite[a.spriteIndex].size=a.value;var b=y.sprite[a.spriteIndex].value;"hidden"!==b&&y.setSprite({spriteIndex:a.spriteIndex,value:b})},y.changeScore=function(a){y.playerScore+=Number(a.value),y.displayScore()},y.setScoreText=function(a){y.scoreText=a.text,y.displayScore()},y.setBackground=function(a){var b=document.getElementById("background");b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[a.value].background)};var Hb=function(a){var b=y.sprite[a].flags;y.sprite[a].firstAnimFrameNum=E.NORMAL,y.sprite[a].firstTurnFrameNum=E.NORMAL+(b&C.ANIMATION?E.ANIMATION:0),y.sprite[a].firstEmotionFrameNum=y.sprite[a].firstTurnFrameNum+(b&C.TURNS?E.TURNS:0)};y.setSprite=function(a){var b=a.spriteIndex,c=y.sprite[b],d=a.value,e=document.getElementById("sprite"+b);if(c.visible="hidden"!==d&&!a.forceHidden,e.setAttribute("visibility",c.visible?"visible":"hidden"),"hidden"!==d&&"visible"!==d){c.flags&=~D,c.flags|=A[d].spriteFlags,c.height=c.size*(A[d].spriteHeight||y.DEFAULT_SPRITE_HEIGHT),c.width=c.size*(A[d].spriteWidth||y.DEFAULT_SPRITE_WIDTH),c.value=a.forceHidden?"hidden":a.value; var f=document.getElementById("spriteClipRect"+b);f.setAttribute("width",c.width),f.setAttribute("height",c.height),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",A[d].sprite),e.setAttribute("width",c.width*Fb(b)),e.setAttribute("height",c.height),Hb(b),y.displaySprite(b)}};var Ib=function(a,b){return a+" "+b+" "},Jb=15,Kb=25,Lb=10,Mb=function(a,b,c,d,e,f,g){var h="M"+Ib(a+e,b);return f||(h+=g?"L"+Ib(a+e-Lb,b-Jb)+"L"+Ib(a+e+Kb,b):"L"+Ib(a+c-e-Kb,b)+"L"+Ib(a+c-Lb,b-Jb)),h+="L"+Ib(a+c-e,b),h+="Q"+Ib(a+c,b)+Ib(a+c,b+e),h+="L"+Ib(a+c,b+d-e)+"Q"+Ib(a+c,b+d)+Ib(a+c-e,b+d),f&&(h+=g?"L"+Ib(a+e+Kb,b+d)+"L"+Ib(a+e-Lb,b+d+Jb):"L"+Ib(a+c-Lb,b+d+Jb)+"L"+Ib(a+c-e-Kb,b+d)),h+="L"+Ib(a+e,b+d),h+="Q"+Ib(a,b+d)+Ib(a,b+d-e),h+="L"+Ib(a,b+e)+"Q"+Ib(a,b)+Ib(a+e,b),h+="Z"},Nb=function(a){a.complete||(a.waitCallback&&a.waitCallback(),a.complete=!0)};y.wait=function(a){return a.started||(a.started=!0,"click"===a.value?a.waitForClick=!0:a.waitTimeout=window.setTimeout(gb(this,Nb,a),a.value)),a.complete},y.hideTitleScreen=function(a){var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup");b.setAttribute("visibility","hidden"),c.setAttribute("visibility","hidden"),a.complete=!0},y.showTitleScreen=function(a){if(!a.started){a.started=!0;var b=document.getElementById("titleScreenTitle"),c=document.getElementById("titleScreenTextGroup"),d=document.getElementById("titleScreenText"),e=document.getElementById("titleScreenTextRect");b.textContent=a.title;var f={svgText:d,text:a.text,width:S,lineHeight:O,topMargin:Q,sideMargin:N,maxLines:P,fullHeight:T},g=lb(f);e.setAttribute("height",g),b.setAttribute("visibility","visible"),c.setAttribute("visibility","visible"),a.waitForClick=!0,a.waitCallback=gb(this,y.hideTitleScreen,a),a.waitTimeout=window.setTimeout(gb(this,Nb,a),K)}return a.complete},y.isCmdCurrentInQueue=function(a,b){var c=!1;return y.eventHandlers.forEach(function(d){if(d.name===b){var e=d.cmdQueue?d.cmdQueue[0]:null;e&&e.name===a&&(c=!0)}}),c},y.hideSpeechBubble=function(a){var b=document.getElementById("speechBubble"+a.spriteIndex);b.setAttribute("visibility","hidden"),b.removeAttribute("onTop"),b.removeAttribute("onRight"),b.removeAttribute("height"),a.complete=!0,delete y.sprite[a.spriteIndex].bubbleTimeoutFunc,y.sayComplete++},y.saySprite=function(a){if(a.started)return a.complete;var b=a.spriteIndex,c=y.sprite[b];if(a.started=!0,c.bubbleTimeoutFunc&&c.bubbleTimeoutFunc(),window.clearTimeout(c.bubbleTimeout),!c.visible)return a.complete=!0,a.complete;var d=document.getElementById("speechBubbleText"+b),e={svgText:d,text:a.text,width:ab,lineHeight:Z,topMargin:_,sideMargin:Y,maxLines:$,fullHeight:bb},f=lb(e),g=document.getElementById("speechBubblePath"+b),h=document.getElementById("speechBubble"+b);return g.setAttribute("height",f),Gb(g),y.displaySprite(a.spriteIndex),h.setAttribute("visibility","visible"),c.bubbleTimeoutFunc=gb(this,y.hideSpeechBubble,a),c.bubbleTimeout=window.setTimeout(c.bubbleTimeoutFunc,U),a.complete},y.stop=function(a){if(ib(a.spriteIndex,!0),ib(a.spriteIndex,!1),!a.dontResetCollisions){y.sprite[a.spriteIndex].clearCollisions();for(var b=0;bc&&!z.allowSpritesOutsidePlayspace&&(b.x=c);break;case u.SOUTH:b.y+=b.speed;var d=y.MAZE_HEIGHT-b.height;b.y>d&&!z.allowSpritesOutsidePlayspace&&(b.y=d);break;case u.WEST:b.x-=b.speed,b.x<0&&!z.allowSpritesOutsidePlayspace&&(b.x=0)}},y.moveDistance=function(a){return a.started||(a.started=!0,a.queuedDistance=a.distance),0===a.queuedDistance},y.timedOut=function(){return y.tickCount>y.timeoutFailureTick},y.allGoalsVisited=function(){var a,b,c=y.sprite[y.protaganistSpriteIndex],d=0;if(0===y.spriteGoals_.length)return!1;for(a=0;a/g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n
\n
\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],27:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
Instructions:
\n
Level Name:
\n\n
\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],28:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push("\n\n"),data.ok&&buf.push('
\n \n
\n"),buf.push("\n"),data.previousLevel&&buf.push(' \n"),buf.push("\n"),data.tryAgain&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.tryAgain()),"
\n
\n "):(buf.push(" "),"left"===data.hintRequestExperiment?buf.push(' \n \n "):"right"==data.hintRequestExperiment?buf.push(' \n \n "):buf.push(' \n "),buf.push(" ")),buf.push("")),buf.push("\n"),data.nextLevel&&(buf.push(" "),data.isK1&&!data.freePlay?buf.push('
\n
Arrowhead
\n
',escape(a.continue()),"
\n
\n "):buf.push(' \n "),buf.push("")),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],29:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('
\n

',message,'

\n
',escape(code),"
\n
\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],30:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push("\n\n

",escape(a.puzzleTitle(locals)),"

\n"),locals.instructions&&buf.push("

",escape(locals.instructions),"

\n"),buf.push(""),locals.aniGifURL&&buf.push(' \n"),buf.push("")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],31:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push("\n\n");var b=location.protocol+"//"+location.host.replace("learn.","");buf.push('\n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],32:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");require("../../locale/zh_tw/common");buf.push('\n\n\n\n");var c=function(){buf.push('
\n \n \n \n \n \n
\n \n \n

\n

\n
\n
\n
\n \n
\n
\n
\n')};buf.push("\n");var d=function(a){buf.push(" "),a&&buf.push('
\n ',a,"\n
\n "),buf.push("")};buf.push("\n");var e=function(){buf.push('
\n // ',escape(a.typeCode()),"\n
\n // ",escape(a.typeHint()),"\n
\n
\n")};buf.push('\n\n
\n
\n ',data.visualization,'\n
\n\n
\n\n
\n \n \n '),data.controls&&buf.push("\n ",data.controls,"\n "),buf.push("\n "),data.extraControlRows&&buf.push("\n ",data.extraControlRows,"\n "),buf.push("\n
\n\n "),c(),buf.push("\n "),d(data.helpHtml),buf.push('\n\n
\n
\n\n
\n
\n
',escape(a.toolboxHeader()),'
\n
\n ',escape(a.workspaceHeader()),' \n
\n
\n  /\n ',escape(data.idealBlockNumber),'\n
\n
\n
',escape(a.showCodeHeader()),'
\n
\n
\n\n
\n\n'),e(),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],34:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push('\n\n\n \n Blockly\n \n \n \n\n\n
\n \n\n\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],35:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push("\n"),options.feedbackImage&&buf.push('\n \n'),buf.push('\n\n
\n\n')}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],36:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("");var a=require("../../locale/zh_tw/common");buf.push('\n\n

\n ',escape(a.numLinesOfCodeWritten({numLines:numLinesWritten})),'\n \n

\n\n"),0!==totalNumLinesWritten&&buf.push('\n

\n ',escape(a.totalNumLinesOfCodeWritten({numLines:totalNumLinesWritten})),"\n

\n"),buf.push("\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{"../../locale/zh_tw/common":40,ejs:42}],37:[function(require,module,exports){module.exports=function(){var t=function anonymous(locals,filters,escape,rethrow){escape=escape||function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")};var buf=[];with(locals||{})!function(){buf.push("

",escape(concept_name),"
\n")}();return buf.join("")};return function(a){return t(a,require("ejs").filters)}}()},{ejs:42}],38:[function(a,b,c){{var d=a("./lodash");a("./xml")}c.shallowCopy=function(a){var b={};for(var c in a)b[c]=a[c];return b},c.cloneWithoutFunctions=function(a){return JSON.parse(JSON.stringify(a))},c.extend=function(a,b){var d=c.shallowCopy(a);for(var e in b)d[e]=b[e];return d},c.escapeHtml=function(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},c.mod=function(a,b){return(a%b+b)%b},c.range=function(a,b){for(var c=[],d=a;b>=d;d++)c.push(d);return c},c.executeIfConditional=function(a,b){return function(){return a()?b.apply(this,arguments):void 0}},c.stripQuotes=function(a){return a.replace(/["']/g,"")},Function.prototype.inherits=function(a){this.prototype=d.create(a.prototype,{constructor:a})},c.wrapNumberValidatorsForLevelBuilder=function(){var a=Blockly.FieldTextInput.nonnegativeIntegerValidator,b=Blockly.FieldTextInput.numberValidator;Blockly.FieldTextInput.nonnegativeIntegerValidator=function(b){return"???"===b?b:a(b)},Blockly.FieldTextInput.numberValidator=function(a){return"???"===a?a:b(a)}}},{"./lodash":11,"./xml":39}],39:[function(a,b,c){c.serialize=function(a){var b=new XMLSerializer;return b.serializeToString(a)},c.parseElement=function(a){var b=new DOMParser;a=a.trim();var d=0===a.indexOf(""+a+"","text/xml"),e=d.getElementsByTagName("parsererror"),f=d.firstChild;if(!f)throw new Error("Nothing parsed");if(e.length>0)throw new Error(c.serialize(e[0]));if(f!==d.lastChild)throw new Error("Parsed multiple elements");return f}},{}],40:[function(a,b,c){var d=a("messageformat");d.locale.zh=function(){return"other"},c.and=function(){return"及"},c.blocklyMessage=function(){return"模組化"},c.catActions=function(){return"動作類別"},c.catColour=function(){return"顏色類別"},c.catLogic=function(){return"邏輯類別"},c.catLists=function(){return"清單/陣列類"},c.catLoops=function(){return"迴圈類別"},c.catMath=function(){return"運算類別"},c.catProcedures=function(){return"函數類別"},c.catText=function(){return"字串類別"},c.catVariables=function(){return"變數類別"},c.codeTooltip=function(){return"觀看產生的 JavaScript 程式碼。"},c.continue=function(){return"繼續 "},c.dialogCancel=function(){return"取消"},c.dialogOK=function(){return"確定"},c.directionNorthLetter=function(){return"北"},c.directionSouthLetter=function(){return"南"},c.directionEastLetter=function(){return"東"},c.directionWestLetter=function(){return"西"},c.end=function(){return"結束"},c.emptyBlocksErrorMsg=function(){return'"重複"和"如果"程式積木需要包含其它積木在裏面才能正常運作, 請檢查裏面是否有安排適當的程式積木.'},c.emptyFunctionBlocksErrorMsg=function(){return"The function block needs to have other blocks inside it to work."},c.extraTopBlocks=function(){return"你有一些程式積木還沒有加到事件積木中。"},c.finalStage=function(){return"恭喜你 !你已完成最後關卡的挑戰。"},c.finalStageTrophies=function(a){return"恭喜! 你已完成最後關卡並且贏得 "+p(a,"numTrophies",0,"zh",{one:"一個獎盃",other:n(a,"numTrophies")+" 獎盃"})+"."},c.finish=function(){return"Finish"},c.generatedCodeInfo=function(a){return'甚至頂尖大學也同樣以"程式積木"來進行程式教學。(例如 : '+v(a,"berkeleyLink")+", "+v(a,"harvardLink")+")。在程式積木的底層,所有組裝完成的程式積木功能,也可以用JavaScript 語法來顯示。"},c.hashError=function(){return"對不起,'%1' 無法對應任何已儲存的程式。"},c.help=function(){return"說明"},c.hintTitle=function(){return"提示:"},c.jump=function(){return"跳轉"},c.levelIncompleteError=function(){return"您已使用了所有必要類型的程式積木,但方式不太正確。"},c.listVariable=function(){return"列表變數\n"},c.makeYourOwnFlappy=function(){return"做出自己的 Flappy 遊戲"},c.missingBlocksErrorMsg=function(){return"請嘗試組合底下的程式積木來解決這一個關卡。"},c.nextLevel=function(a){return"恭喜你 !你已完成第"+v(a,"puzzleNumber")+"關。"},c.nextLevelTrophies=function(a){return"恭喜!你已經完成第"+v(a,"puzzleNumber")+"關,並且贏得"+p(a,"numTrophies",0,"zh",{one:"1個獎盃",other:n(a,"numTrophies")+" 獎盃"})+"."},c.nextStage=function(a){return" 恭喜你!你已經完成 "+v(a,"stageName")+"。"},c.nextStageTrophies=function(a){return"恭喜您!你已經完成第"+v(a,"stageNumber")+"階段,並贏得"+p(a,"numTrophies",0,"zh",{one:"1個獎盃",other:n(a,"numTrophies")+" 獎盃"})+"."},c.numBlocksNeeded=function(a){return"恭喜!你已經完成第 "+v(a,"puzzleNumber")+" 關。 (但是,你可以只使用 "+p(a,"numBlocks",0,"zh",{one:"一個程式積木",other:n(a,"numBlocks")+" 程式積木"})+".來完成挑戰哦!)"},c.numLinesOfCodeWritten=function(a){return"你已經撰寫了 "+p(a,"numLines",0,"zh",{one:"一行",other:n(a,"numLines")+" 行"})+" 的程式碼!"},c.play=function(){return"玩"},c.puzzleTitle=function(a){return"階段 "+v(a,"stage_total")+" 的第"+v(a,"puzzle_number")+" 關"},c.repeat=function(){return"重複"},c.resetProgram=function(){return"再試一次"},c.runProgram=function(){return"執行"},c.runTooltip=function(){return"執行工作區中程式積木所定義的程式碼。" },c.score=function(){return"分數"},c.showCodeHeader=function(){return"顯示程式碼"},c.showGeneratedCode=function(){return"顯示程式碼"},c.subtitle=function(){return"一個視覺化的程式設計環境\n\n"},c.textVariable=function(){return"文字變數"},c.tooFewBlocksMsg=function(){return"你已使用所有必要類型的程式積木,但請嘗試使用更多同類型的程式積木來完成這個關卡。"},c.tooManyBlocksMsg=function(){return"這個關卡可以用 < x id = 'START_SPAN' / > < x id = 'END_SPAN' / > 個程式積木解決。"},c.tooMuchWork=function(){return"你讓我做太多工作了! 可以試著減少一些重複次數嗎?"},c.toolboxHeader=function(){return"程式積木"},c.openWorkspace=function(){return"它如何運作的"},c.totalNumLinesOfCodeWritten=function(a){return"到目前為止共撰寫了:"+p(a,"numLines",0,"zh",{one:"1 line",other:n(a,"numLines")+" lines"})+" 行的程式碼。"},c.tryAgain=function(){return"再試一次"},c.hintRequest=function(){return"See hint"},c.backToPreviousLevel=function(){return"返回上一階段"},c.saveToGallery=function(){return"保存到您的收藏簿。"},c.savedToGallery=function(){return"已經存放到您的收藏簿了!"},c.typeCode=function(){return"在說明下方輸入您的 JavaScript 程式碼"},c.typeFuncs=function(){return"可用函數:%1"},c.typeHint=function(){return'請注意"括弧"和"分號"都是必須的。'},c.workspaceHeader=function(){return"在此組合您的區塊"},c.infinity=function(){return"無窮"},c.rotateText=function(){return"旋轉你的設備。"},c.orientationLock=function(){return"在設備設置中關閉旋轉鎖定。"},c.wantToLearn=function(){return"想要學習寫程式嗎?"},c.watchVideo=function(){return"觀看影片"},c.when=function(){return"當"},c.whenRun=function(){return"when run"},c.tryHOC=function(){return"試試 Hour of Code (一時編程網)"},c.signup=function(){return"報名參加簡介課程"},c.hintHeader=function(){return"提示:"},c.genericFeedback=function(){return"See how you ended up, and try to fix your program."}},{messageformat:53}],41:[function(a,b,c){var d=a("messageformat");d.locale.zh=function(){return"other"},c.actor=function(){return"演員"},c.catActions=function(){return"動作類別"},c.catControl=function(){return"迴圈類別"},c.catEvents=function(){return"事件類別"},c.catLogic=function(){return"邏輯類別"},c.catMath=function(){return"運算類別"},c.catProcedures=function(){return"函數類別"},c.catText=function(){return"文字類別"},c.catVariables=function(){return"變數類別"},c.changeScoreTooltip=function(){return"將得分增加或減少一分"},c.changeScoreTooltipK1=function(){return"增加一分"},c.continue=function(){return"繼續 "},c.decrementPlayerScore=function(){return"減少一分"},c.defaultSayText=function(){return"在此處輸入"},c.emotion=function(){return"情緒"},c.finalLevel=function(){return"恭喜你 !你已經解決了最後的關卡。"},c.hello=function(){return"你好"},c.helloWorld=function(){return"世界 您好!"},c.incrementPlayerScore=function(){return"得分"},c.makeProjectileDisappear=function(){return"消失"},c.makeProjectileBounce=function(){return"反彈"},c.makeProjectileBlueFireball=function(){return"make blue fireball"},c.makeProjectilePurpleFireball=function(){return"make purple fireball"},c.makeProjectileRedFireball=function(){return"make red fireball"},c.makeProjectileYellowHearts=function(){return"make yellow hearts"},c.makeProjectilePurpleHearts=function(){return"make purple hearts"},c.makeProjectileRedHearts=function(){return"make red hearts"},c.makeProjectileTooltip=function(){return"完成這個專案,讓互相碰撞的球消失或反彈。"},c.makeYourOwn=function(){return"完成你自己的故事"},c.moveDirectionDown=function(){return"向下"},c.moveDirectionLeft=function(){return" 向左"},c.moveDirectionRight=function(){return"向右\n"},c.moveDirectionUp=function(){return"向上"},c.moveDirectionRandom=function(){return"隨機移動"},c.moveDistance25=function(){return"25 個像素"},c.moveDistance50=function(){return"50個像素"},c.moveDistance100=function(){return"100個像素"},c.moveDistance200=function(){return"200個像素"},c.moveDistance400=function(){return"400個像素"},c.moveDistancePixels=function(){return"像素 "},c.moveDistanceRandom=function(){return"隨機像素"},c.moveDistanceTooltip=function(){return"將角色在指定的方向移動指定的距離"},c.moveSprite=function(){return"移動"},c.moveSpriteN=function(a){return"移動演員"+v(a,"spriteIndex")},c.moveDown=function(){return"向下移動"},c.moveDownTooltip=function(){return"將角色向下移動。"},c.moveLeft=function(){return"向左移動"},c.moveLeftTooltip=function(){return"將角色向左移動。"},c.moveRight=function(){return"向右移動"},c.moveRightTooltip=function(){return"將角色向右移動。"},c.moveUp=function(){return"向上移動"},c.moveUpTooltip=function(){return"將角色向上移動。"},c.moveTooltip=function(){return"移動角色。"},c.nextLevel=function(){return"恭喜!你已經完成這個關卡。"},c.no=function(){return"否"},c.numBlocksNeeded=function(){return"這個關卡可以使用 %1 個程式積木來完成。"},c.ouchExclamation=function(){return"哎喲 !"},c.playSoundCrunch=function(){return"播放收緊的音效"},c.playSoundGoal1=function(){return"播放得分1的音效"},c.playSoundGoal2=function(){return"播放得分2的音效"},c.playSoundHit=function(){return"播放命中的音效"},c.playSoundLosePoint=function(){return"播放失分的音效"},c.playSoundLosePoint2=function(){return"播放失分2的音效"},c.playSoundRetro=function(){return"播放復古的音效"},c.playSoundRubber=function(){return"播放橡膠的音效"},c.playSoundSlap=function(){return"播放掌聲音效"},c.playSoundTooltip=function(){return"播放所選音效"},c.playSoundWinPoint=function(){return"播放得分音效"},c.playSoundWinPoint2=function(){return"播放得分2的音效"},c.playSoundWood=function(){return"播放木頭音效"},c.positionOutTopLeft=function(){return"到左上角"},c.positionOutTopRight=function(){return"to the above top right position"},c.positionTopOutLeft=function(){return"to the top outside left position"},c.positionTopLeft=function(){return"to the top left position"},c.positionTopCenter=function(){return"to the top center position"},c.positionTopRight=function(){return"to the top right position"},c.positionTopOutRight=function(){return"to the top outside right position"},c.positionMiddleLeft=function(){return"to the middle left position"},c.positionMiddleCenter=function(){return"to the middle center position"},c.positionMiddleRight=function(){return"to the middle right position"},c.positionBottomOutLeft=function(){return"to the bottom outside left position"},c.positionBottomLeft=function(){return"to the bottom left position"},c.positionBottomCenter=function(){return"到底部的中心位置"},c.positionBottomRight=function(){return"to the bottom right position"},c.positionBottomOutRight=function(){return"to the bottom outside right position"},c.positionOutBottomLeft=function(){return"to the below bottom left position"},c.positionOutBottomRight=function(){return"to the below bottom right position"},c.positionRandom=function(){return"至隨機位置"},c.projectileBlueFireball=function(){return"blue fireball"},c.projectilePurpleFireball=function(){return"purple fireball"},c.projectileRedFireball=function(){return"red fireball"},c.projectileYellowHearts=function(){return"yellow hearts"},c.projectilePurpleHearts=function(){return"purple hearts"},c.projectileRedHearts=function(){return"red hearts"},c.projectileRandom=function(){return"隨機"},c.reinfFeedbackMsg=function(){return'您可以按"重試"按鈕返回你正在進行的故事。'},c.repeatForever=function(){return"永遠重複"},c.repeatDo=function(){return"執行"},c.repeatForeverTooltip=function(){return"當故事進行時,請不斷執行板塊中的動作。"},c.saySprite=function(){return"說"},c.saySpriteN=function(a){return"演員 "+v(a,"spriteIndex")+" 說"},c.saySpriteTooltip=function(){return"給指定的演員彈出相關的文字框。"},c.scoreText=function(a){return"得分: "+v(a,"playerScore")},c.setBackground=function(){return"設置背景"},c.setBackgroundRandom=function(){return"設置隨機背景"},c.setBackgroundBlack=function(){return"設置黑色背景"},c.setBackgroundCave=function(){return"設置洞穴背景"},c.setBackgroundCloudy=function(){return"設置多雲背景"},c.setBackgroundHardcourt=function(){return"設置硬地球場背景"},c.setBackgroundNight=function(){return"設置夜晚背景"},c.setBackgroundUnderwater=function(){return"設置水下背景"},c.setBackgroundCity=function(){return"set city background"},c.setBackgroundDesert=function(){return"set desert background"},c.setBackgroundRainbow=function(){return"set rainbow background"},c.setBackgroundSoccer=function(){return"set soccer background"},c.setBackgroundSpace=function(){return"set space background"},c.setBackgroundTennis=function(){return"set tennis background"},c.setBackgroundWinter=function(){return"set winter background"},c.setBackgroundTooltip=function(){return"設置背景圖像"},c.setScoreText=function(){return"設置得分"},c.setScoreTextTooltip=function(){return"設置得分區域中顯示的文字。"},c.setSpriteEmotionAngry=function(){return"設置憤怒模式"},c.setSpriteEmotionHappy=function(){return"設置快樂模置"},c.setSpriteEmotionNormal=function(){return"設置正常模式"},c.setSpriteEmotionRandom=function(){return"設置隨機情緒"},c.setSpriteEmotionSad=function(){return"設置悲傷模式"},c.setSpriteEmotionTooltip=function(){return"設置演員的情緒"},c.setSpriteAlien=function(){return"予外星人圖像"},c.setSpriteBat=function(){return"到蝙蝠圖像"},c.setSpriteBird=function(){return"到鳥圖像"},c.setSpriteCat=function(){return"設為貓咪的影像"},c.setSpriteCaveBoy=function(){return"to a cave boy image"},c.setSpriteCaveGirl=function(){return"to a cave girl image"},c.setSpriteDinosaur=function(){return"設為恐龍的影像"},c.setSpriteDog=function(){return"設為狗狗的影像"},c.setSpriteDragon=function(){return"到龍圖像"},c.setSpriteGhost=function(){return"到鬼魂圖像"},c.setSpriteHidden=function(){return"設為隱藏的影像"},c.setSpriteHideK1=function(){return"隱藏"},c.setSpriteKnight=function(){return"到騎士圖像"},c.setSpriteMonster=function(){return"到怪物圖像"},c.setSpriteNinja=function(){return"到蒙面忍者圖像"},c.setSpriteOctopus=function(){return"設為章魚的影像"},c.setSpritePenguin=function(){return"設為企鵝的影像"},c.setSpritePirate=function(){return"到海盜圖像"},c.setSpritePrincess=function(){return"到公主圖像"},c.setSpriteRandom=function(){return"設為隨機的影像"},c.setSpriteRobot=function(){return"到機器人圖像"},c.setSpriteShowK1=function(){return"顯示"},c.setSpriteSpacebot=function(){return"to a spacebot image"},c.setSpriteSoccerGirl=function(){return"to a soccer girl image"},c.setSpriteSoccerBoy=function(){return"to a soccer boy image"},c.setSpriteSquirrel=function(){return"到松鼠圖像"},c.setSpriteTennisGirl=function(){return"to a tennis girl image"},c.setSpriteTennisBoy=function(){return"to a tennis boy image"},c.setSpriteUnicorn=function(){return"到獨角獸圖像"},c.setSpriteWitch=function(){return"設為巫婆的影像"},c.setSpriteWizard=function(){return"到巫師圖像"},c.setSpritePositionTooltip=function(){return"立即將一個角色移動到指定的位置。"},c.setSpriteK1Tooltip=function(){return"顯示或隱藏指定的角色。"},c.setSpriteTooltip=function(){return"設為角色的影像"},c.setSpriteSizeRandom=function(){return"to a random size"},c.setSpriteSizeVerySmall=function(){return"to a very small size"},c.setSpriteSizeSmall=function(){return"to a small size"},c.setSpriteSizeNormal=function(){return"to a normal size"},c.setSpriteSizeLarge=function(){return"to a large size"},c.setSpriteSizeVeryLarge=function(){return"to a very large size"},c.setSpriteSizeTooltip=function(){return"Sets the size of an actor"},c.setSpriteSpeedRandom=function(){return"設為隨機的速度"},c.setSpriteSpeedVerySlow=function(){return"設為非常慢的速度"},c.setSpriteSpeedSlow=function(){return"設為慢的速度"},c.setSpriteSpeedNormal=function(){return"設為一般的速度"},c.setSpriteSpeedFast=function(){return"設為快的速度"},c.setSpriteSpeedVeryFast=function(){return"設為非常快的速度"},c.setSpriteSpeedTooltip=function(){return"設為角色的速度"},c.setSpriteZombie=function(){return"到僵屍圖像"},c.shareStudioTwitter=function(){return"看看我在@codeorg ,自己所編寫的故事。"},c.shareGame=function(){return"分享你的故事:"},c.showTitleScreen=function(){return"顯示標題螢幕"},c.showTitleScreenTitle=function(){return"標題"},c.showTitleScreenText=function(){return"文本"},c.showTSDefTitle=function(){return"在這裡輸入標題"},c.showTSDefText=function(){return"在這裡輸入本文"},c.showTitleScreenTooltip=function(){return"顯示一個具有標題和文本的標題視窗。"},c.setSprite=function(){return"設置"},c.setSpriteN=function(a){return"選擇演員"+v(a,"spriteIndex")},c.soundCrunch=function(){return"收緊"},c.soundGoal1=function(){return"goal 1"},c.soundGoal2=function(){return"goal 2"},c.soundHit=function(){return"hit"},c.soundLosePoint=function(){return"lose point"},c.soundLosePoint2=function(){return"lose point 2"},c.soundRetro=function(){return"retro"},c.soundRubber=function(){return"rubber"},c.soundSlap=function(){return"slap"},c.soundWinPoint=function(){return"win point"},c.soundWinPoint2=function(){return"win point 2"},c.soundWood=function(){return"wood"},c.speed=function(){return"speed"},c.stopSprite=function(){return"停止"},c.stopSpriteN=function(a){return"stop actor "+v(a,"spriteIndex")},c.stopTooltip=function(){return"停止移動角色。"},c.throwSprite=function(){return"throw"},c.throwSpriteN=function(a){return"actor "+v(a,"spriteIndex")+" throw"},c.throwTooltip=function(){return"Throws a projectile from the specified actor."},c.vanish=function(){return"vanish"},c.vanishActorN=function(a){return"vanish actor "+v(a,"spriteIndex")},c.vanishTooltip=function(){return"Vanishes the actor."},c.waitFor=function(){return"等待"},c.waitSeconds=function(){return"秒"},c.waitForClick=function(){return"等待點擊"},c.waitForRandom=function(){return"等待隨機"},c.waitForHalfSecond=function(){return"等待半秒"},c.waitFor1Second=function(){return"等待一秒"},c.waitFor2Seconds=function(){return"等待兩秒"},c.waitFor5Seconds=function(){return"等待五秒"},c.waitFor10Seconds=function(){return"等待十秒"},c.waitParamsTooltip=function(){return"等待輸入值(秒),或直接使用「0」來等候點擊"},c.waitTooltip=function(){return"等候輸入的時間(當時間到達或點擊,就會觸發效果)"},c.whenArrowDown=function(){return"下方向鍵"},c.whenArrowLeft=function(){return"左方向鍵"},c.whenArrowRight=function(){return"右方向鍵"},c.whenArrowUp=function(){return"上方向鍵"},c.whenArrowTooltip=function(){return"按下指定的方向鍵在執行動作"},c.whenDown=function(){return"當按下"下方向鍵""},c.whenDownTooltip=function(){return"當按下"下方向鍵",就會執行動作"},c.whenGameStarts=function(){return"當故事開始時"},c.whenGameStartsTooltip=function(){return"當故事開始時執行動作"},c.whenLeft=function(){return"當按下"左方向鍵""},c.whenLeftTooltip=function(){return"當按下"左方向鍵",就會執行動作"},c.whenRight=function(){return"當按下"右方向鍵""},c.whenRightTooltip=function(){return"當按下"右方向鍵",就會執行動作"},c.whenSpriteClicked=function(){return"當你按下演員"},c.whenSpriteClickedN=function(a){return"當演員 "+v(a,"spriteIndex")+" 被點擊時"},c.whenSpriteClickedTooltip=function(){return"當演員被點擊時執行動作"},c.whenSpriteCollidedN=function(a){return"當演員 "+v(a,"spriteIndex")},c.whenSpriteCollidedTooltip=function(){return"當兩個演員接觸時執行動作"},c.whenSpriteCollidedWith=function(){return"接觸"},c.whenSpriteCollidedWithN=function(a){return"接觸演員"+v(a,"spriteIndex")},c.whenSpriteCollidedWithBlueFireball=function(){return"touches blue fireball"},c.whenSpriteCollidedWithPurpleFireball=function(){return"touches purple fireball"},c.whenSpriteCollidedWithRedFireball=function(){return"touches red fireball"},c.whenSpriteCollidedWithYellowHearts=function(){return"touches yellow hearts"},c.whenSpriteCollidedWithPurpleHearts=function(){return"touches purple hearts"},c.whenSpriteCollidedWithRedHearts=function(){return"touches red hearts"},c.whenSpriteCollidedWithBottomEdge=function(){return"接觸底部邊緣"},c.whenSpriteCollidedWithLeftEdge=function(){return"接著左邊邊緣"},c.whenSpriteCollidedWithRightEdge=function(){return"接觸右邊邊緣"},c.whenSpriteCollidedWithTopEdge=function(){return"接觸上邊邊緣"},c.whenUp=function(){return"當"上方向鍵""},c.whenUpTooltip=function(){return"當按下"上方向鍵",就會執行動作"},c.yes=function(){return"是"}},{messageformat:53}],42:[function(a,b,c){function d(a){return a.substr(1).split("|").reduce(function(a,b){var c=b.split(":"),d=c.shift(),e=c.join(":")||"";return e&&(e=", "+e),"filters."+d+"("+a+e+")"})}function e(a,b,c,d){var e=b.split("\n"),f=Math.max(d-3,0),g=Math.min(e.length,d+3),h=e.slice(f,g).map(function(a,b){var c=b+f+1;return(c==d?" >> ":" ")+c+"| "+a}).join("\n");throw a.path=c,a.message=(c||"ejs")+":"+d+"\n"+h+"\n\n"+a.message,a}function f(a,b){var c=k(i(b),a),d=j(a);return d||(c+=".ejs"),c}var g=a("./utils"),h=a("path"),i=h.dirname,j=h.extname,k=h.join,l=a("fs"),m=l.readFileSync,n=c.filters=a("./filters"),o={};c.clearCache=function(){o={}};var p=(c.parse=function(a,b){var b=b||{},e=b.open||c.open||"<%",g=b.close||c.close||"%>",h=b.filename,i=b.compileDebug!==!1,j="";j+="var buf = [];",!1!==b._with&&(j+="\nwith (locals || {}) { (function(){ "),j+="\n buf.push('";for(var k=1,l=!1,n=0,o=a.length;o>n;++n){var p=a[n];if(a.slice(n,e.length+n)==e){n+=e.length;var q,r,s=(i?"__stack.lineno=":"")+k;switch(a[n]){case"=":q="', escape(("+s+", ",r=")), '",++n;break;case"-":q="', ("+s+", ",r="), '",++n;break;default:q="');"+s+";",r="; buf.push('"}var t=a.indexOf(g,n),u=a.substring(n,t),v=n,w=null,x=0;if("-"==u[u.length-1]&&(u=u.substring(0,u.length-2),l=!0),0==u.trim().indexOf("include")){var y=u.trim().slice(7).trim();if(!h)throw new Error("filename option is required for includes");var z=f(y,h);w=m(z,"utf8"),w=c.parse(w,{filename:z,_with:!1,open:e,close:g,compileDebug:i}),j+="' + (function(){"+w+"})() + '",u=""}for(;~(x=u.indexOf("\n",x));)x++,k++;":"==u.substr(0,1)&&(u=d(u)),u&&(u.lastIndexOf("//")>u.lastIndexOf("\n")&&(u+="\n"),j+=q,j+=u,j+=r),n+=t-v+g.length-1}else"\\"==p?j+="\\\\":"'"==p?j+="\\'":"\r"==p||("\n"==p?l?l=!1:(j+="\\n",k++):j+=p)}return j+=!1!==b._with?"'); })();\n} \nreturn buf.join('');":"');\nreturn buf.join('');"},c.compile=function(a,b){b=b||{};var d=b.escape||g.escape,f=JSON.stringify(a),h=b.compileDebug!==!1,i=b.client,j=b.filename?JSON.stringify(b.filename):"undefined";a=h?["var __stack = { lineno: 1, input: "+f+", filename: "+j+" };",e.toString(),"try {",c.parse(a,b),"} catch (err) {"," rethrow(err, __stack.input, __stack.filename, __stack.lineno);","}"].join("\n"):c.parse(a,b),b.debug&&console.log(a),i&&(a="escape = escape || "+d.toString()+";\n"+a);try{var k=new Function("locals, filters, escape, rethrow",a)}catch(l){throw"SyntaxError"==l.name&&(l.message+=b.filename?" in "+j:" while compiling ejs"),l}return i?k:function(a){return k.call(this,a,n,d,e)}});c.render=function(a,b){var c,b=b||{};if(b.cache){if(!b.filename)throw new Error('"cache" option requires "filename".');c=o[b.filename]||(o[b.filename]=p(a,b))}else c=p(a,b);return b.__proto__=b.locals,c.call(b.scope,b)},c.renderFile=function(a,b,d){var e=a+":string";"function"==typeof b&&(d=b,b={}),b.filename=a;var f;try{f=b.cache?o[e]||(o[e]=m(a,"utf8")):m(a,"utf8")}catch(g){return void d(g)}d(null,c.render(f,b))},c.__express=c.renderFile,a.extensions?a.extensions[".ejs"]=function(a,b){b=b||a.filename;var c={filename:b,client:!0},d=l.readFileSync(b).toString(),e=p(d,c);a._compile("module.exports = "+e.toString()+";",b)}:a.registerExtension&&a.registerExtension(".ejs",function(a){return p(a,{})})},{"./filters":43,"./utils":44,fs:45,path:46}],43:[function(a,b,c){c.first=function(a){return a[0]},c.last=function(a){return a[a.length-1]},c.capitalize=function(a){return a=String(a),a[0].toUpperCase()+a.substr(1,a.length)},c.downcase=function(a){return String(a).toLowerCase()},c.upcase=function(a){return String(a).toUpperCase()},c.sort=function(a){return Object.create(a).sort()},c.sort_by=function(a,b){return Object.create(a).sort(function(a,c){return a=a[b],c=c[b],a>c?1:c>a?-1:0})},c.size=c.length=function(a){return a.length},c.plus=function(a,b){return Number(a)+Number(b)},c.minus=function(a,b){return Number(a)-Number(b)},c.times=function(a,b){return Number(a)*Number(b)},c.divided_by=function(a,b){return Number(a)/Number(b)},c.join=function(a,b){return a.join(b||", ")},c.truncate=function(a,b,c){return a=String(a),a.length>b&&(a=a.slice(0,b),c&&(a+=c)),a},c.truncate_words=function(a,b){var a=String(a),c=a.split(/ +/);return c.slice(0,b).join(" ")},c.replace=function(a,b,c){return String(a).replace(b,c||"")},c.prepend=function(a,b){return Array.isArray(a)?[b].concat(a):b+a},c.append=function(a,b){return Array.isArray(a)?a.concat(b):a+b},c.map=function(a,b){return a.map(function(a){return a[b]})},c.reverse=function(a){return Array.isArray(a)?a.reverse():String(a).split("").reverse().join("")},c.get=function(a,b){return a[b]},c.json=function(a){return JSON.stringify(a)}},{}],44:[function(a,b,c){c.escape=function(a){return String(a).replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")}},{}],45:[function(){},{}],46:[function(a,b,c){(function(a){function b(a,b){for(var c=0,d=a.length-1;d>=0;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function d(a,b){if(a.filter)return a.filter(b);for(var c=[],d=0;d=-1&&!e;f--){var g=f>=0?arguments[f]:a.cwd();if("string"!=typeof g)throw new TypeError("Arguments to path.resolve must be strings");g&&(c=g+"/"+c,e="/"===g.charAt(0))}return c=b(d(c.split("/"),function(a){return!!a}),!e).join("/"),(e?"/":"")+c||"."},c.normalize=function(a){var e=c.isAbsolute(a),f="/"===g(a,-1);return a=b(d(a.split("/"),function(a){return!!a}),!e).join("/"),a||e||(a="."),a&&f&&(a+="/"),(e?"/":"")+a},c.isAbsolute=function(a){return"/"===a.charAt(0)},c.join=function(){var a=Array.prototype.slice.call(arguments,0);return c.normalize(d(a,function(a){if("string"!=typeof a)throw new TypeError("Arguments to path.join must be strings");return a}).join("/"))},c.relative=function(a,b){function d(a){for(var b=0;b=0&&""===a[c];c--);return b>c?[]:a.slice(b,c-b+1)}a=c.resolve(a).substr(1),b=c.resolve(b).substr(1);for(var e=d(a.split("/")),f=d(b.split("/")),g=Math.min(e.length,f.length),h=g,i=0;g>i;i++)if(e[i]!==f[i]){h=i;break}for(var j=[],i=h;ib&&(b=a.length+b),a.substr(b,c)}}).call(this,a("JkpR2F"))},{JkpR2F:47}],47:[function(a,b){function c(){}var d=b.exports={};d.nextTick=function(){var a="undefined"!=typeof window&&window.setImmediate,b="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(a)return function(a){return window.setImmediate(a)};if(b){var c=[];return window.addEventListener("message",function(a){var b=a.source;if((b===window||null===b)&&"process-tick"===a.data&&(a.stopPropagation(),c.length>0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),d.title="browser",d.browser=!0,d.env={},d.argv=[],d.on=c,d.addListener=c,d.once=c,d.off=c,d.removeListener=c,d.removeAllListeners=c,d.emit=c,d.binding=function(){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(){throw new Error("process.chdir is not supported")}},{}],48:[function(a,b,c){(function(a){!function(d){function e(a){throw RangeError(H[a])}function f(a,b){for(var c=a.length;c--;)a[c]=b(a[c]);return a}function g(a,b){return f(a.split(G),b).join(".")}function h(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 i(a){return f(a,function(a){var b="";return a>65535&&(a-=65536,b+=K(a>>>10&1023|55296),a=56320|1023&a),b+=K(a)}).join("")}function j(a){return 10>a-48?a-22:26>a-65?a-65:26>a-97?a-97:w}function k(a,b){return a+22+75*(26>a)-((0!=b)<<5)}function l(a,b,c){var d=0;for(a=c?J(a/A):a>>1,a+=J(a/b);a>I*y>>1;d+=w)a=J(a/I);return J(d+(I+1)*a/(a+z))}function m(a){var b,c,d,f,g,h,k,m,n,o,p=[],q=a.length,r=0,s=C,t=B;for(c=a.lastIndexOf(D),0>c&&(c=0),d=0;c>d;++d)a.charCodeAt(d)>=128&&e("not-basic"),p.push(a.charCodeAt(d));for(f=c>0?c+1:0;q>f;){for(g=r,h=1,k=w;f>=q&&e("invalid-input"),m=j(a.charCodeAt(f++)),(m>=w||m>J((v-r)/h))&&e("overflow"),r+=m*h,n=t>=k?x:k>=t+y?y:k-t,!(n>m);k+=w)o=w-n,h>J(v/o)&&e("overflow"),h*=o;b=p.length+1,t=l(r-g,b,0==g),J(r/b)>v-s&&e("overflow"),s+=J(r/b),r%=b,p.splice(r++,0,s)}return i(p)}function n(a){var b,c,d,f,g,i,j,m,n,o,p,q,r,s,t,u=[];for(a=h(a),q=a.length,b=C,c=0,g=B,i=0;q>i;++i)p=a[i],128>p&&u.push(K(p));for(d=f=u.length,f&&u.push(D);q>d;){for(j=v,i=0;q>i;++i)p=a[i],p>=b&&j>p&&(j=p);for(r=d+1,j-b>J((v-c)/r)&&e("overflow"),c+=(j-b)*r,b=j,i=0;q>i;++i)if(p=a[i],b>p&&++c>v&&e("overflow"),p==b){for(m=c,n=w;o=g>=n?x:n>=g+y?y:n-g,!(o>m);n+=w)t=m-o,s=w-o,u.push(K(k(o+t%s,0))),m=J(t/s);u.push(K(k(m,0))),g=l(c,r,d==f),c=0,++d}++c,++b}return u.join("")}function o(a){return g(a,function(a){return E.test(a)?m(a.slice(4).toLowerCase()):a})}function p(a){return g(a,function(a){return F.test(a)?"xn--"+n(a):a})}var q="object"==typeof c&&c,r="object"==typeof b&&b&&b.exports==q&&b,s="object"==typeof a&&a;(s.global===s||s.window===s)&&(d=s);var t,u,v=2147483647,w=36,x=1,y=26,z=38,A=700,B=72,C=128,D="-",E=/^xn--/,F=/[^ -~]/,G=/\x2E|\u3002|\uFF0E|\uFF61/g,H={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},I=w-x,J=Math.floor,K=String.fromCharCode;if(t={version:"1.2.4",ucs2:{decode:h,encode:i},decode:m,encode:n,toASCII:p,toUnicode:o},"function"==typeof define&&"object"==typeof define.amd&&define.amd)define("punycode",function(){return t});else if(q&&!q.nodeType)if(r)r.exports=t;else for(u in t)t.hasOwnProperty(u)&&(q[u]=t[u]);else d.punycode=t}(this)}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],49:[function(a,b){"use strict";function c(a,b){return Object.prototype.hasOwnProperty.call(a,b)}b.exports=function(a,b,e,f){b=b||"&",e=e||"=";var g={};if("string"!=typeof a||0===a.length)return g;var h=/\+/g;a=a.split(b);var i=1e3;f&&"number"==typeof f.maxKeys&&(i=f.maxKeys);var j=a.length;i>0&&j>i&&(j=i);for(var k=0;j>k;++k){var l,m,n,o,p=a[k].replace(h,"%20"),q=p.indexOf(e);q>=0?(l=p.substr(0,q),m=p.substr(q+1)):(l=p,m=""),n=decodeURIComponent(l),o=decodeURIComponent(m),c(g,n)?d(g[n])?g[n].push(o):g[n]=[g[n],o]:g[n]=o}return g};var d=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}},{}],50:[function(a,b){"use strict";function c(a,b){if(a.map)return a.map(b);for(var c=[],d=0;d",'"',"`"," ","\r","\n"," "],q=["{","}","|","\\","^","`"].concat(p),r=["'"].concat(q),s=["%","/","?",";","#"].concat(r),t=["/","?","#"],u=255,v=/^[a-z0-9A-Z_-]{0,63}$/,w=/^([a-z0-9A-Z_-]{0,63})(.*)$/,x={javascript:!0,"javascript:":!0},y={javascript:!0,"javascript:":!0},z={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},A=a("querystring");d.prototype.parse=function(a,b,c){if(!i(a))throw new TypeError("Parameter 'url' must be a string, not "+typeof a);var d=a;d=d.trim();var e=n.exec(d);if(e){e=e[0];var f=e.toLowerCase();this.protocol=f,d=d.substr(e.length)}if(c||e||d.match(/^\/\/[^@\/]+@[^@\/]+/)){var g="//"===d.substr(0,2);!g||e&&y[e]||(d=d.substr(2),this.slashes=!0)}if(!y[e]&&(g||e&&!z[e])){for(var h=-1,j=0;jk)&&(h=k)}var l,o;o=-1===h?d.lastIndexOf("@"):d.lastIndexOf("@",h),-1!==o&&(l=d.slice(0,o),d=d.slice(o+1),this.auth=decodeURIComponent(l)),h=-1;for(var j=0;jk)&&(h=k)}-1===h&&(h=d.length),this.host=d.slice(0,h),d=d.slice(h),this.parseHost(),this.hostname=this.hostname||"";var p="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!p)for(var q=this.hostname.split(/\./),j=0,B=q.length;B>j;j++){var C=q[j];if(C&&!C.match(v)){for(var D="",E=0,F=C.length;F>E;E++)D+=C.charCodeAt(E)>127?"x":C[E];if(!D.match(v)){var G=q.slice(0,j),H=q.slice(j+1),I=C.match(w);I&&(G.push(I[1]),H.unshift(I[2])),H.length&&(d="/"+H.join(".")+d),this.hostname=G.join(".");break}}}if(this.hostname=this.hostname.length>u?"":this.hostname.toLowerCase(),!p){for(var J=this.hostname.split("."),K=[],j=0;jj;j++){var O=r[j],P=encodeURIComponent(O);P===O&&(P=escape(O)),d=d.split(O).join(P)}var Q=d.indexOf("#");-1!==Q&&(this.hash=d.substr(Q),d=d.slice(0,Q));var R=d.indexOf("?");if(-1!==R?(this.search=d.substr(R),this.query=d.substr(R+1),b&&(this.query=A.parse(this.query)),d=d.slice(0,R)):b&&(this.search="",this.query={}),d&&(this.pathname=d),z[f]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var M=this.pathname||"",L=this.search||"";this.path=M+L}return this.href=this.format(),this},d.prototype.format=function(){var a=this.auth||"";a&&(a=encodeURIComponent(a),a=a.replace(/%3A/i,":"),a+="@");var b=this.protocol||"",c=this.pathname||"",d=this.hash||"",e=!1,f="";this.host?e=a+this.host:this.hostname&&(e=a+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(e+=":"+this.port)),this.query&&j(this.query)&&Object.keys(this.query).length&&(f=A.stringify(this.query));var g=this.search||f&&"?"+f||"";return b&&":"!==b.substr(-1)&&(b+=":"),this.slashes||(!b||z[b])&&e!==!1?(e="//"+(e||""),c&&"/"!==c.charAt(0)&&(c="/"+c)):e||(e=""),d&&"#"!==d.charAt(0)&&(d="#"+d),g&&"?"!==g.charAt(0)&&(g="?"+g),c=c.replace(/[?#]/g,function(a){return encodeURIComponent(a)}),g=g.replace("#","%23"),b+e+c+g+d},d.prototype.resolve=function(a){return this.resolveObject(e(a,!1,!0)).format()},d.prototype.resolveObject=function(a){if(i(a)){var b=new d;b.parse(a,!1,!0),a=b}var c=new d;if(Object.keys(this).forEach(function(a){c[a]=this[a]},this),c.hash=a.hash,""===a.href)return c.href=c.format(),c;if(a.slashes&&!a.protocol)return Object.keys(a).forEach(function(b){"protocol"!==b&&(c[b]=a[b])}),z[c.protocol]&&c.hostname&&!c.pathname&&(c.path=c.pathname="/"),c.href=c.format(),c;if(a.protocol&&a.protocol!==c.protocol){if(!z[a.protocol])return Object.keys(a).forEach(function(b){c[b]=a[b]}),c.href=c.format(),c;if(c.protocol=a.protocol,a.host||y[a.protocol])c.pathname=a.pathname;else{for(var e=(a.pathname||"").split("/");e.length&&!(a.host=e.shift()););a.host||(a.host=""),a.hostname||(a.hostname=""),""!==e[0]&&e.unshift(""),e.length<2&&e.unshift(""),c.pathname=e.join("/")}if(c.search=a.search,c.query=a.query,c.host=a.host||"",c.auth=a.auth,c.hostname=a.hostname||a.host,c.port=a.port,c.pathname||c.search){var f=c.pathname||"",g=c.search||"";c.path=f+g}return c.slashes=c.slashes||a.slashes,c.href=c.format(),c}var h=c.pathname&&"/"===c.pathname.charAt(0),j=a.host||a.pathname&&"/"===a.pathname.charAt(0),m=j||h||c.host&&a.pathname,n=m,o=c.pathname&&c.pathname.split("/")||[],e=a.pathname&&a.pathname.split("/")||[],p=c.protocol&&!z[c.protocol];if(p&&(c.hostname="",c.port=null,c.host&&(""===o[0]?o[0]=c.host:o.unshift(c.host)),c.host="",a.protocol&&(a.hostname=null,a.port=null,a.host&&(""===e[0]?e[0]=a.host:e.unshift(a.host)),a.host=null),m=m&&(""===e[0]||""===o[0])),j)c.host=a.host||""===a.host?a.host:c.host,c.hostname=a.hostname||""===a.hostname?a.hostname:c.hostname,c.search=a.search,c.query=a.query,o=e; else if(e.length)o||(o=[]),o.pop(),o=o.concat(e),c.search=a.search,c.query=a.query;else if(!l(a.search)){if(p){c.hostname=c.host=o.shift();var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return c.search=a.search,c.query=a.query,k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.href=c.format(),c}if(!o.length)return c.pathname=null,c.path=c.search?"/"+c.search:null,c.href=c.format(),c;for(var r=o.slice(-1)[0],s=(c.host||a.host)&&("."===r||".."===r)||""===r,t=0,u=o.length;u>=0;u--)r=o[u],"."==r?o.splice(u,1):".."===r?(o.splice(u,1),t++):t&&(o.splice(u,1),t--);if(!m&&!n)for(;t--;t)o.unshift("..");!m||""===o[0]||o[0]&&"/"===o[0].charAt(0)||o.unshift(""),s&&"/"!==o.join("/").substr(-1)&&o.push("");var v=""===o[0]||o[0]&&"/"===o[0].charAt(0);if(p){c.hostname=c.host=v?"":o.length?o.shift():"";var q=c.host&&c.host.indexOf("@")>0?c.host.split("@"):!1;q&&(c.auth=q.shift(),c.host=c.hostname=q.shift())}return m=m||c.host&&o.length,m&&!v&&o.unshift(""),o.length?c.pathname=o.join("/"):(c.pathname=null,c.path=null),k(c.pathname)&&k(c.search)||(c.path=(c.pathname?c.pathname:"")+(c.search?c.search:"")),c.auth=a.auth||c.auth,c.slashes=c.slashes||a.slashes,c.href=c.format(),c},d.prototype.parseHost=function(){var a=this.host,b=o.exec(a);b&&(b=b[0],":"!==b&&(this.port=b.substr(1)),a=a.substr(0,a.length-b.length)),a&&(this.hostname=a)}},{punycode:48,querystring:51}],53:[function(a,b,d){!function(a){function e(a,b){var c;if(a&&b&&(e.locale[a]=b),c=a=a||"en",b=b||e.locale[c=e.Utils.getFallbackLocale(a)],!b)throw new Error("Plural Function not found for locale: "+a);this.pluralFunc=b,this.locale=a,this.fallbackLocale=c}c=function(a){if(!a)throw new Error("MessageFormat: No data passed to function.")},n=function(a,b,c){if(isNaN(a[b]))throw new Error("MessageFormat: `"+b+"` isnt a number.");return a[b]-(c||0)},v=function(a,b){return c(a),a[b]},p=function(a,b,d,f,g){return c(a),a[b]in g?g[a[b]]:(b=e.locale[f](a[b]-d),b in g?g[b]:g.other)},s=function(a,b,d){return c(a),a[b]in d?d[a[b]]:d.other},e.locale={en:function(a){return 1===a?"one":"other"}},e.SafeString=function(a){this.string=a},e.SafeString.prototype.toString=function(){return this.string.toString()},e.Utils={numSub:function(a,b,c,d){var e=a.replace(/(^|[^\\])#/g,'$1"+n('+b+","+c+(d?","+d:"")+')+"');return e.replace(/^""\+/,"").replace(/\+""$/,"")},escapeExpression:function(a){var b={"\n":"\\n",'"':'\\"'},c=/[\n"]/g,d=/[\n"]/,f=function(a){return b[a]||"&"};return a instanceof e.SafeString?a.toString():null===a||a===!1?"":d.test(a)?a.replace(c,f):a},getFallbackLocale:function(a){for(var b=a.indexOf("-")>=0?"-":"_";!e.locale.hasOwnProperty(a);)if(a=a.substring(0,a.lastIndexOf(b)),0===a.length)return null;return a}};var f=function(){function a(a){return'"'+a.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g,escape)+'"'}var b={parse:function(b,c){function d(a){D>B||(B>D&&(D=B,E=[]),E.push(a))}function e(){var a,b;return b=B,a=f(),null!==a&&(a=function(a,b){return{type:"program",program:b}}(b,a)),null===a&&(B=b),a}function f(){var a,b,c,d,e;if(d=B,e=B,a=q(),null!==a){for(b=[],c=g();null!==c;)b.push(c),c=g();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d=[];b&&b.val&&d.push(b);for(var e in c)c.hasOwnProperty(e)&&d.push(c[e]);return{type:"messageFormatPattern",statements:d}}(d,a[0],a[1])),null===a&&(B=d),a}function g(){var a,c,e,f,g,i,j,k;return j=B,k=B,123===b.charCodeAt(B)?(a="{",B++):(a=null,0===C&&d('"{"')),null!==a?(c=w(),null!==c?(e=h(),null!==e?(f=w(),null!==f?(125===b.charCodeAt(B)?(g="}",B++):(g=null,0===C&&d('"}"')),null!==g?(i=q(),null!==i?a=[a,c,e,f,g,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b,c){var d=[];return b&&d.push(b),c&&c.val&&d.push(c),{type:"messageFormatPatternRight",statements:d}}(j,a[2],a[5])),null===a&&(B=j),a}function h(){var a,c,e,f,g,h;return f=B,g=B,a=r(),null!==a?(h=B,44===b.charCodeAt(B)?(c=",",B++):(c=null,0===C&&d('","')),null!==c?(e=i(),null!==e?c=[c,e]:(c=null,B=h)):(c=null,B=h),c=null!==c?c:"",null!==c?a=[a,c]:(a=null,B=g)):(a=null,B=g),null!==a&&(a=function(a,b,c){var d={type:"messageFormatElement",argumentIndex:b};return c&&c.length?d.elementFormat=c[1]:d.output=!0,d}(f,a[0],a[1])),null===a&&(B=f),a}function i(){var a,c,e,f,g,h,i,l,m;return l=B,m=B,a=w(),null!==a?("plural"===b.substr(B,6)?(c="plural",B+=6):(c=null,0===C&&d('"plural"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=j(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l),null===a&&(l=B,m=B,a=w(),null!==a?("select"===b.substr(B,6)?(c="select",B+=6):(c=null,0===C&&d('"select"')),null!==c?(e=w(),null!==e?(44===b.charCodeAt(B)?(f=",",B++):(f=null,0===C&&d('","')),null!==f?(g=w(),null!==g?(h=k(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"elementFormat",key:b,val:c.val}}(l,a[1],a[5])),null===a&&(B=l)),a}function j(){var a,b;return b=B,a=l(),null!==a&&(a=function(a,b){return{type:"pluralStyle",val:b}}(b,a)),null===a&&(B=b),a}function k(){var a,b;return b=B,a=n(),null!==a&&(a=function(a,b){return{type:"selectStyle",val:b}}(b,a)),null===a&&(B=b),a}function l(){var a,b,c,d,e;if(d=B,e=B,a=m(),a=null!==a?a:"",null!==a){for(b=[],c=o();null!==c;)b.push(c),c=o();null!==b?a=[a,b]:(a=null,B=e)}else a=null,B=e;return null!==a&&(a=function(a,b,c){var d={type:"pluralFormatPattern",pluralForms:c};return d.offset=b?b:0,d}(d,a[0],a[1])),null===a&&(B=d),a}function m(){var a,c,e,f,g,h,i,j,k;return j=B,k=B,a=w(),null!==a?("offset"===b.substr(B,6)?(c="offset",B+=6):(c=null,0===C&&d('"offset"')),null!==c?(e=w(),null!==e?(58===b.charCodeAt(B)?(f=":",B++):(f=null,0===C&&d('":"')),null!==f?(g=w(),null!==g?(h=u(),null!==h?(i=w(),null!==i?a=[a,c,e,f,g,h,i]:(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k)):(a=null,B=k),null!==a&&(a=function(a,b){return b}(j,a[5])),null===a&&(B=j),a}function n(){var a,b,c;for(c=B,a=[],b=o();null!==b;)a.push(b),b=o();return null!==a&&(a=function(a,b){return{type:"selectFormatPattern",pluralForms:b}}(c,a)),null===a&&(B=c),a}function o(){var a,c,e,g,h,i,j,k,l,m;return l=B,m=B,a=w(),null!==a?(c=p(),null!==c?(e=w(),null!==e?(123===b.charCodeAt(B)?(g="{",B++):(g=null,0===C&&d('"{"')),null!==g?(h=w(),null!==h?(i=f(),null!==i?(j=w(),null!==j?(125===b.charCodeAt(B)?(k="}",B++):(k=null,0===C&&d('"}"')),null!==k?a=[a,c,e,g,h,i,j,k]:(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m)):(a=null,B=m),null!==a&&(a=function(a,b,c){return{type:"pluralForms",key:b,val:c}}(l,a[1],a[5])),null===a&&(B=l),a}function p(){var a,c,e,f;return e=B,a=r(),null!==a&&(a=function(a,b){return b}(e,a)),null===a&&(B=e),null===a&&(e=B,f=B,61===b.charCodeAt(B)?(a="=",B++):(a=null,0===C&&d('"="')),null!==a?(c=u(),null!==c?a=[a,c]:(a=null,B=f)):(a=null,B=f),null!==a&&(a=function(a,b){return b}(e,a[1])),null===a&&(B=e)),a}function q(){var a,b,c,d,e,f,g,h;if(f=B,g=B,a=w(),null!==a){for(b=[],h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==c;)b.push(c),h=B,c=w(),null!==c?(d=s(),null!==d?(e=w(),null!==e?c=[c,d,e]:(c=null,B=h)):(c=null,B=h)):(c=null,B=h);null!==b?a=[a,b]:(a=null,B=g)}else a=null,B=g;return null!==a&&(a=function(a,b,c){for(var d=[],e=0;e Date: Mon, 22 Sep 2014 12:37:06 -0700 Subject: [PATCH 08/11] Bump phantomjs version --- pegasus/Gemfile | 2 +- pegasus/Gemfile.lock | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pegasus/Gemfile b/pegasus/Gemfile index 1d31a9f536835..bafe78f437239 100644 --- a/pegasus/Gemfile +++ b/pegasus/Gemfile @@ -7,7 +7,7 @@ gem 'rack-contrib', '~> 1.1' gem 'activesupport', '~> 4.0.3' gem 'haml', '~> 4.0' gem 'minitest', '~> 4.7' -gem 'phantomjs', '~> 1.9' +gem 'phantomjs', '~> 1.9.7.1' gem 'redcarpet', '~> 3.1' gem 'le', '~> 2.2' gem 'sinatra', require: 'sinatra/base' diff --git a/pegasus/Gemfile.lock b/pegasus/Gemfile.lock index a784b57e56b61..3a86578a8fb67 100644 --- a/pegasus/Gemfile.lock +++ b/pegasus/Gemfile.lock @@ -124,7 +124,7 @@ GEM multi_json (~> 1.3) multi_xml (~> 0.5) rack (~> 1.2) - phantomjs (1.9.7.0) + phantomjs (1.9.7.1) polyglot (0.3.4) rack (1.5.2) rack-contrib (1.1.0) @@ -193,7 +193,7 @@ DEPENDENCIES minitest (~> 4.7) mysql2 newrelic_rpm - phantomjs (~> 1.9) + phantomjs (~> 1.9.7.1) rack (~> 1.5) rack-contrib (~> 1.1) rake (~> 10.3) From 648fe1d8ce6fdb015c04271e4f370613fa485993 Mon Sep 17 00:00:00 2001 From: David Bailey Date: Mon, 22 Sep 2014 12:50:11 -0700 Subject: [PATCH 09/11] touch up employee engagement basics --- pegasus/helpers/hoc_helpers.rb | 6 +++++- pegasus/routes/hoc_routes.rb | 2 +- .../sites.v3/code.org/public/company-profiles/splat.haml | 4 ++-- .../sites.v3/code.org/public/create-company-profile.haml | 4 ++-- .../code.org/public/edit-company-profile/splat.haml | 3 +++ pegasus/sites.v3/code.org/views/company_profile_form.haml | 6 ++++++ 6 files changed, 19 insertions(+), 6 deletions(-) diff --git a/pegasus/helpers/hoc_helpers.rb b/pegasus/helpers/hoc_helpers.rb index 39a24bd2b34d5..c84fa3ab67f83 100644 --- a/pegasus/helpers/hoc_helpers.rb +++ b/pegasus/helpers/hoc_helpers.rb @@ -61,6 +61,10 @@ def complete_tutorial(tutorial=nil) end end + # TODO(dave): split into complete_tutorial_new and + # complete_tutorial_old. Also split other methods + # [launch|complete}_tutorial[_pixel]. + # For now, Do the bare minimum to bring a user with a # company-specific cookie to the right congrats page. sequel_row = DB[:hoc_activity].where(session:request.cookies['hour_of_code']).first @@ -68,7 +72,7 @@ def complete_tutorial(tutorial=nil) expires 0, :private, :must_revalidate if company - redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}&ee=#{company}" : '/congrats'), 302) + redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}&co=#{company}" : '/congrats'), 302) else redirect((row ? "http://#{row.referer}/congrats?i=#{row.session}" : '/congrats'), 302) end diff --git a/pegasus/routes/hoc_routes.rb b/pegasus/routes/hoc_routes.rb index 112da581453cc..88038a193a9cb 100644 --- a/pegasus/routes/hoc_routes.rb +++ b/pegasus/routes/hoc_routes.rb @@ -11,7 +11,7 @@ end # Employee engagement -get '/api/ee/begin/:company' do |company| +get '/api/hour/begin_company/:company' do |company| pass unless form = DB[:forms].where(kind:'CompanyProfile', name:company).first pass unless tutorial = DB[:tutorials].where(code:'codeorg').first launch_tutorial(tutorial, company:company) diff --git a/pegasus/sites.v3/code.org/public/company-profiles/splat.haml b/pegasus/sites.v3/code.org/public/company-profiles/splat.haml index 05e4934059819..e447d136fbcbe 100644 --- a/pegasus/sites.v3/code.org/public/company-profiles/splat.haml +++ b/pegasus/sites.v3/code.org/public/company-profiles/splat.haml @@ -1,6 +1,5 @@ --- title: "Join the largest learning event in history, Dec 8-14, 2014" --# banner: "Join the largest learning event in history, Dec 8-14, 2014" social: "twitter:card": player "twitter:site": "@codeorg" @@ -32,6 +31,7 @@ social: %img#company_logo{src:"/forms/uploads/#{company['logo_path_s']}", width: "50px", height: "50px"} %h1.ee_display_name= company['display_name_s'] +-# TODO(dave): implement user_entered_markdown function. #intro_top -if company['intro_top_copy_t'] =markdown company['intro_top_copy_t'].to_s @@ -68,7 +68,7 @@ social: #getstarted.col-mobile-44 #largegap.mobile-show-medium - %a{:href=>"/api/ee/begin/#{company['name_s']}"} + %a{:href=>"/api/hour/begin_company/#{company['name_s']}"} %button.btn.btn-default Start now diff --git a/pegasus/sites.v3/code.org/public/create-company-profile.haml b/pegasus/sites.v3/code.org/public/create-company-profile.haml index c3add6b373e96..f9a4d3a6e68a6 100644 --- a/pegasus/sites.v3/code.org/public/create-company-profile.haml +++ b/pegasus/sites.v3/code.org/public/create-company-profile.haml @@ -1,3 +1,3 @@ --#unauthorized! unless dashboard_user --#forbidden! unless dashboard_user[:admin] +-unauthorized! unless dashboard_user +-forbidden! unless dashboard_user[:admin] =view :company_profile_form, data:{}, secret:nil diff --git a/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml b/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml index 8f78239a6e494..debc08dc29df5 100644 --- a/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml +++ b/pegasus/sites.v3/code.org/public/edit-company-profile/splat.haml @@ -1,3 +1,6 @@ +--- +title: "Edit profile" +--- -secret = request.splat_path_info[1..-1] -pass unless form = DB[:forms].where(kind:'CompanyProfile', secret:secret).first =view :company_profile_form, data:JSON.parse(form[:data]), secret:secret diff --git a/pegasus/sites.v3/code.org/views/company_profile_form.haml b/pegasus/sites.v3/code.org/views/company_profile_form.haml index b1c66b1942f26..f95a86c70eaac 100644 --- a/pegasus/sites.v3/code.org/views/company_profile_form.haml +++ b/pegasus/sites.v3/code.org/views/company_profile_form.haml @@ -41,6 +41,12 @@ %tr %th{colspan:2} %button Submit + %tr + %th{colspan:2} + %a{href: "/company-profiles/#{data['name_s']}"} + View #{data['display_name_s']}'s landing page + + :javascript function processResponse(data) From d833aad4693227fd560dc04898d85aaf19e21ad9 Mon Sep 17 00:00:00 2001 From: Josh Lory Date: Mon, 22 Sep 2014 13:10:43 -0700 Subject: [PATCH 10/11] Removing private keys --- docs/varnish-instance-setup.md | 30 +----------------------------- 1 file changed, 1 insertion(+), 29 deletions(-) diff --git a/docs/varnish-instance-setup.md b/docs/varnish-instance-setup.md index b3932b431be04..138e3d68f0440 100644 --- a/docs/varnish-instance-setup.md +++ b/docs/varnish-instance-setup.md @@ -30,35 +30,7 @@ These instructions use RVM to install Ruby instead of RBENV; follow these instru - `ssh` to the instance -- Create `~/.ssh/id_rsa`
-----BEGIN RSA PRIVATE KEY-----
-MIIEowIBAAKCAQEAyw6GpuCmXbTRSEh4EZ1gDEy45D6ZLi5EPm+rrI+zUG3qAWAQ
-w78FwjPmKZDRmLmxmVF1GrRipdOP8QDoHcKxICOOur7cKo7ga3e3iFTQ0nYlt3Qx
-OMWQUgwpoDn2RLaOFeotwTHU48x1isB8M06EQWRXT0q9EQcsiWeF7Ry43lj/YUf9
-1CKsVAQ74JCSLrqQVPKWwLLxgtTQlqICmAJtJLLXwojKvz8bafZpjBX5bKGi9T5D
-SwvICvozvqVuhTs++ohd0JYUFxieEUNe9EjvAAvpmtUz7KPzz3uA77HsF1D8ZDmc
-HES3RpZmCrRLSyAAj9MqA63AR85Hdxniz5z4mwIDAQABAoIBACalUBlInkEtXbtt
-F3T6x8HvhCzkgRDZ+2EKrdi8zLrdAHFckDRBEd6BNCfrCQkRJmzwpOH9PN0ko7uR
-mZu4Zy+ftNVz58EtyiaJ9WM8CTZVCB6fPZL5ftsut2loPqebOvWOyUCAtGzah/Bt
-a/Xz1pX/e+J6bftkqyRHkKStF74xSPms4ujrWMM25Y/+Uzm3WHsTN147mHx6FDKo
-qZ8iwe9XezFRXOaXbgq7VzD96fcxMYGoh3o5qSRlNAWD84Q9fBs42UYvhqLFn+77
-BqO/b7I/bI2n8DwZyObOP/O+wZVOtU63drohC5JryQuhAfX2jL7Mk+9cUYWW2qNL
-XiveG9kCgYEA9cTVK7theaR1tCFeEzTiwSKOsTIEji1EdtGLhQs2aEb45OAGFt8V
-m6ORWULNRG/4OaGnK0OXK0lKcC59mAcHazvXpvgisUcLXsXydg7Ve9+tZn9haZyB
-sCeloQSMOZxUxVglueNupMXfScI+N/WRM/GRsC7UiOTy02VL9VE93e8CgYEA04KC
-M7Gimk02De/soG4E//l7gti71lSg8OVa3yr4XuJA8mV3BRIhz11yLiRwz/lqaG0u
-7hpbCA6Ah2Q77jcV6oMrr5RF4x/tVoPsSWgGdNYhVUuXoMVeUYSXkVn8ES2qAKDi
-Pyof/I1+njGOE68IjjzR879K8a/63xnUTRyWfBUCgYBAxXdI50FxRZ6fsouQlEeO
-jwT8PiplLhj1F5Slo6bbJJlD+KaiMHkJY7pSxABFIR1SUwAzrsSQa+hqWFZRUsjp
-wgO7xXmfLxIYECMuagppczHH6ZpKsyyauFg2b3RlWoYc3HZU31OxqVSHo+Gx7c4u
-2mODA1SQH4a/n9q89IRRkQKBgGfz0q45deNEY3bCHphSul5cbZnHj7otadQ7xUe9
-xMhNhwIbYD27xaY3FTEcc92jherBDrmzdl4lUoI4f0P7Cuhxg30N8LNKM8m7mNwT
-Jmkx/LwBJQq9Njf2ZM/pW/vNZ6pbaBcHSyVDHaH+VQfTlO7jcYTM1baneTNBbJhh
-noxpAoGBAKuevpjgXdoBS5sUGSGqsD6wBnK8KyoF5jBc2Yj/QGKW99i3ZK06haI0
-0IFt6uI5AqpB0V4U9yV3uBtVjBL2QQSoheLuM7tS38+9JhLVy1ySIFaAG6a9HTtd
-IhQNTvPrfLxx++0/ey3R6WJ/NMkFYDtXQQjWnvz8fyomQL3paabb
------END RSA PRIVATE KEY-----
- -- Create `~/.ssh/id_rsa.pub`
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLDoam4KZdtNFISHgRnWAMTLjkPpkuLkQ+b6usj7NQbeoBYBDDvwXCM+YpkNGYubGZUXUatGKl04/xAOgdwrEgI466vtwqjuBrd7eIVNDSdiW3dDE4xZBSDCmgOfZEto4V6i3BMdTjzHWKwHwzToRBZFdPSr0RByyJZ4XtHLjeWP9hR/3UIqxUBDvgkJIuupBU8pbAsvGC1NCWogKYAm0kstfCiMq/Pxtp9mmMFflsoaL1PkNLC8gK+jO+pW6FOz76iF3QlhQXGJ4RQ170SO8AC+ma1TPso/PPe4DvsewXUPxkOZwcRLdGlmYKtEtLIACP0yoDrcBHzkd3GeLPnPib ubuntu@code.org
+- Create `~/.ssh/id_rsa` and `~/.ssh/id_rsa.pub` with the dev@code.org keys from - `chmod 600 ~/.ssh/id_rsa*` - `sudo aptitude install -y git` From d32f80ad8c5eb663c5bfee4ef2c70ac2d7a1bca7 Mon Sep 17 00:00:00 2001 From: David Bailey Date: Mon, 22 Sep 2014 13:22:54 -0700 Subject: [PATCH 11/11] add employee engagement basic instructions --- .../code.org/views/company_profile_form.haml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pegasus/sites.v3/code.org/views/company_profile_form.haml b/pegasus/sites.v3/code.org/views/company_profile_form.haml index f95a86c70eaac..30fa041821c46 100644 --- a/pegasus/sites.v3/code.org/views/company_profile_form.haml +++ b/pegasus/sites.v3/code.org/views/company_profile_form.haml @@ -2,6 +2,16 @@ %form#company_profile %table + -if secret + %tr + %th{colspan:2} + Instructions: + %tr + %th{colspan:2} + 1. Bookmark this page! (Cmd-D or Ctrl-D) + %tr + %th{colspan:2} + 2. update company info: %tr %th Name @@ -40,9 +50,11 @@ %input{name:'logo_file', type:'file'} %tr %th{colspan:2} + 3. %button Submit %tr %th{colspan:2} + 4. %a{href: "/company-profiles/#{data['name_s']}"} View #{data['display_name_s']}'s landing page